[calc] Traitement des 'nombres' informatiques.

Bonjour,

J'ai des nombres avec des unités informatiques : Go, Ko, Mo, etc ... Existe t'il une solution pour faire comprendre ça à calc ? Je voudrait pouvoir faire des sommes avec des unités différentes, trier, etc ...

La question serait d'ailleurs la même avec des m, cm, mm !

Ce serait un outils assez indispensable pour des tas d'ingénieurs.

J'ai fait un peu de recherche sur Internet, sans trouver comment faire, ni de module adapté.

Une idée ?

Olivier

Bonjour
À première vue, je ne pense pas que ça soit une bonne idée.

1 Go + 1 octet ça fait combien ? 1 Go, 1 072 741 825 octets ? 1048576, ? Ko
Difficile de définir des règles de gestion d'arrondi générique

À mon avis, Il vaut mieux choisir une unité, qui va bien en fonction du
contexte, et enregistrer / stocker les données dans cette unité.
ça n'empêche pas d'afficher dans une autre, de saisir dans une troisième si
on a envie

Désolé
Bonne journée

<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Garanti
sans virus. www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

On va évidemment plutôt utiliser des unités proches. Go et Mo par exemple. Et mon problème est plus de faire du tri que des opérations.

Je reçoit des données dans un format que je ne maitrise pas forcément, et je ne vois pas de solution pour les convertir dans une unité unique.

Olivier

Le mieux ou le moins mal est de procéder en deux phases :

1. Réception et normalisation des données
2. Stockage et exploitation

Pour la normalisation, vous aurez sans doute besoin d'écrire un peu de code, par lequel vous ferez les conversions vers les unités que vous utiliserez pour le calcul, le tri ou toute autre opération. C'est à vous de déterminer l'unité la plus appropriée en fonction des valeurs d'entrée et de la précision souhaitée.

A priori vous pourriez passer par une macro BASIC, mais ça peut tout aussi bien être fait par un programme externe, dédié, écrit en n'importe quoi que vous maitrisez.

Quant à l'approche proprement dite, en gros vous recevez vos données sous la forme de chaînes de caractères. Il vous faut donc séparer le bon grain de l'ivraie, la valeur numérique des unités. Une fois que vous savez que 3,25Go veut dire 3,25 à multiplier par 1 Go et vous stockez le résultat en Giga octets si c'est ce qui vous arrange. Ou vous utilisez le facteur que vous souhaitez et vous stockez des Ko, des Mo ou des Po si vous préférez.

Bonjour,

Le mieux ou le moins mal est de procéder en deux phases :

1. Réception et normalisation des données
2. Stockage et exploitation

Pour la normalisation, vous aurez sans doute besoin d'écrire un peu de code, par lequel vous ferez les conversions vers les unités que vous utiliserez pour le calcul, le tri ou toute autre opération. C'est à vous de déterminer l'unité la plus appropriée en fonction des valeurs d'entrée et de la précision souhaitée.

Il y a un piège avec les unités "informatiques" : Ko, Mo, Go d'un coté et Kio, Mio et Gio de l'autre. Mais il est probable que peu de gens sont au fait de ce genre de subtilité ce qui peut engendrer des malentendus, par exemple sur l'espace disponible sur une clé usb.
https://fr.wikipedia.org/wiki/Octet#Multiples_normalisés

Bonne journée
JBF

Bonjour Olivier,

je reprends le début du fil car, ça me parait plus simple....

Bonjour,

J'ai des nombres avec des unités informatiques : Go, Ko, Mo, etc ... Existe t'il une solution pour faire comprendre ça à calc ? Je voudrait pouvoir faire des sommes avec des unités différentes, trier, etc ...

La question serait d'ailleurs la même avec des m, cm, mm !

Ce serait un outils assez indispensable pour des tas d'ingénieurs.

Ben oui car les M, G, T, P et inversement, m, µ, n, p, f sont des notations scientifiques au titre du Système international bien plus largement que pour les informaticiens...

J'ai fait un peu de recherche sur Internet, sans trouver comment faire, ni de module adapté.

Une idée ?

Oui. Surtout si ton but c'est le tri. A défaut de la reprise exacte des unités scientifiques, tu as à ta disposition la "notation ingénieur" qui est proposée dans LibreOffice...

Format/ cellules/ sélectionne... scientifique !!!

puis coche "notation ingénieur"

Ensuite tu peux affiner en t'aidant des codes de formats https://help.libreoffice.org/7.0/fr/text/shared/01/05020301.html

Avec un peu de malice, tu devrais pouvoir arriver au résultat souhaité (ou vraiment de très près...). Il n'est pas impossible que tu puisses tenir compte des subtilité des nombres binaires par multiples de 2^10 et non 10^3

Olivier

Bonne soirée

Claire

Bonjour,

Bonjour,

J'ai des nombres avec des unités informatiques : Go, Ko, Mo, etc ...
Existe t'il une solution pour faire comprendre ça à calc ? Je
voudrait pouvoir faire des sommes avec des unités différentes, trier,
etc ...

La question serait d'ailleurs la même avec des m, cm, mm !

Ce serait un outils assez indispensable pour des tas d'ingénieurs.

Non je ne crois pas. Bien au contraire utiliser plusieurs unités différentes pour des quantités de même nature est une excellente source d'erreurs (*). Dans un outil de calcul, se donner la possibilité d'ajouter des mètres et des centimètres engendre des complications parfaitement inutiles. Il est bien plus simple et robuste de tout convertir dans les unités du système international, quitte à faire les conversions inverses pour rendre l'affichage des résultats plus confortable à lire.

(*) exemple extrême : https://fr.wikipedia.org/wiki/Mars_Climate_Orbiter#Perte_de_la_sonde_(23_septembre_1999)

Bonne journée
JBF