Le type Double !!!
Résolu
doumbia.danse
Messages postés
52
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonsoir,
Au fait j'ai réalisé une calculatrice , et le résultat est à stocker dans un type double, mais il arrive que si j'entre un nombre à plus de 17 chiffre comme ça , le programme n'affiche que 15 chiffre et complète le reste avec des zero
Auriez-vous une idée de cela?
Merci d'avance
Au fait j'ai réalisé une calculatrice , et le résultat est à stocker dans un type double, mais il arrive que si j'entre un nombre à plus de 17 chiffre comme ça , le programme n'affiche que 15 chiffre et complète le reste avec des zero
Auriez-vous une idée de cela?
Merci d'avance
1 réponse
-
Bonjour,
Un int est limité en taille, son maximum est 2^31, soit 10 chiffres... pas 15 ou 17 !
En plus ton problème ressemble plus à l'utilisation d"un nombre flottants pas un entier.
Il faudrait voir ton code et un exemple de calcul.-
-
Donc pour double le problème c'est qu'il n'a pas une précision infinie.
Si tu regardes la norme IEEE 754, tu verras que la précision est toujours la même, parce que la mantisse est bornée. Si on t'affiche des 0 à la fin c'est parce qu'on a dépassé le dernier bit de la mantisse. -
-
Tu peux utiliser un autre type de données qui va avoir une taille de mantisse plus grande, par exemple avec un "long double" mais tu vas quand même avoir des limites à un moment donné.
Sinon il y a des bibliothèques spécialisées dans le calcul de grands nombres, comme GMP.
-