15 juin
Suite au précédent billet sur la précision d’un double en java
Certaines personnes n’arrive pas à comprendre pourquoi 0,1 ne peut pas être représenté en java par exemple :
System.out.println(1.3-1.2);
Et la c’est le drame !!! le résultat n’est pas 0.1 mais 0.10000000000000009
Il est impossible de représenter exactement 0.1 ou n’importe quelle puissance négative de 10 au moyen d’un float ou d’un double d’aprés le format IEEE754.
C’est pas beau l’informatique ?
Quelques Documents intéressants sur le sujet :
Rapport de recherche Arithmétique flottante
The pitfalls of verifying floating-point computations
What Every Computer Scientist Should Know About Floating-Point Arithmetic
Commentaires récents