-
le type double
bonjour tout le monde,
j'implémente une méthode de compression, plus précisément le codage arithmétique qui consiste à compresser des caractères en les remplaçant par un nombre en virgule flottante.
pour cela il faut calculer les probabilités des caractères à compresser dans le texte dans lequel ils apparaissent, donc il s'agit de doubles. et lors de la manipulation de ces doubles il ya des erreurs de précision que je ne comprends vraiment pas, par exemple: la somme de deux doubles ne donne pas le résultat attendu, par exemle (0.1 + 0.2) ne donne pas 0.3 mais 0.300000000004. et maleureusement ceci fausse le résultat de la compression. alors y a-t-il un moyen pour résoudre ce problème ou de le contourner?
-
Salut,
C'est dans la :faq: Enfin c'est la solution qui est dans la faq, pour la cause, il existe différent article la dessus. Tu trouveras en faisant une petite recherche pas mal de discussion la dessus dans le forum.
-
par ailleurs tu peux prendre N'IMPORTE QUEL LANGUAGE ça va toujours te donner ce résultat... Essaie un coup d'écrire 0.3 comme une somme de puissances de deux, tu vas rire8-)