Décimales capricieuses.

Résolu/Fermé
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 - 8 juil. 2015 à 16:24
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 - 9 juil. 2015 à 00:27
Bonjour à toutes et tous.

Sur une feuille Excel, une cellule de résultat me pose problème.

De façon plus ou moins aléatoire, elle me donne un résultat avec des décimales imposées et un "1" en fin de nombre.
2531.50000000001 ai lieu de 2531.50

A savoir:

C'est un simple résultat d'addition de chiffres d'une colonne.
Ces colonnes sont toutes configurées pour 2 chiffres après la virgule.
Les nombres rentrés sont avec 1 décimale (des kilomètres. Ex: 14,4)
J'ai vérifié TOUS les kilométrages saisis.
J'ai vérifié le format de cellule de cette colonne et de la cellule de résultats.
Le PC (celui d'un parent) est neuf, n'a presque rien qui tourne dessus.
Office 2013

Merci

5 réponses

Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
8 juil. 2015 à 16:35
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
8 juil. 2015 à 16:39
Bonjour
c'es un problème récurrent sur Excel dont on parle beaucoup.Vous pouvez naviguer dans les liens qui s'y rapportent, mis vous ne trouverez pas la solution pour éliminer le problème, il semble q'elle soit encore dans les tiroirs de Microsoft et la configuration du format de cellule n'y change rien.
par contre, si vous n'avez pas besoin de ces décimales, et si ce malheureux dix-millionième de kilomètre vous gêne, écrivez votre formule avec, par exemple:
=ARRONDI(formule;5) pour n'avoir que 5 décimales)
crdlmnt

0
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
8 juil. 2015 à 19:50
Merci à tous.

Je vois que le problème n'est pas prêt d'être résolu par Microsoft...

Je vais donc appliquer la formule de Vaucluse, de façon à limiter (dans mon cas), le nombre de décimales à 2.

Bonne continuation.
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
8 juil. 2015 à 22:15
Bonjour,

Ce n'est pas un pb, c'est normal.
Tu ne peux pas représenter tous les nombres flottants en binaire sans qu'il y ait de perte de précision sur les derniers bits.
MS n'y est pour rien et n'y peut rien.
eric
0
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
8 juil. 2015 à 23:46
Pas un problème ?

Quelques dizaines de nombres à 2 chiffres avec ou sans décimales, simplement additionnés ?

Pour un logiciel spécialisé dans le calcul...

Chacun son point de vue.
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 9/07/2015 à 00:18
Ce n'est pas un point de vue, c'est une contrainte due à une réalité incontournable.
C'est le lot de tous les logiciels qui traitent des nombres flottants.

Comme ça a l'air de t'intéresser :
Par ailleurs, la précision d'un nombre flottant est 2^-23 en simple précision et 2^52 en double précision. On perd donc 2 à 4 chiffres de précision par rapport aux opérations entières. Il faut comprendre aussi que les nombres flottants sont alignés avant toute addition ou soustraction, ce qui entraîne des pertes de précision. Par exemple, l'addition d'un très petit nombre à un grand nombre va laisser ce dernier inchangé. Il y a alors dépassement de capacité vers le bas (underflow). Un bon exercice est de montrer que la série harmonique converge en informatique flottante, ou que l'addition flottante n'est pas associative! Il y a aussi des débordements de capacité vers le haut (overflows). Ces derniers sont en général plus souvent testés que les dépassements vers le bas.
C'est moins sur Excel, mais sur Maple qui est hyper-spécialisé en math tu auras toujours ce pb, mais seulement à la 126e décimale
Il faut faire un choix entre précision et rapidité de calcul.

Et Ici regarde la partie Précautions d'emploi, ça t'éclairera.
eric
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Viking58 Messages postés 186 Date d'inscription vendredi 5 décembre 2014 Statut Membre Dernière intervention 5 janvier 2018 7
9 juil. 2015 à 00:27
Merci Eric.

Ton explication détaillée devrait éclairer pas mal de lanternes.
0