Précision : float et double
Résolu
BittarAhmad
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
BittarAhmad Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
BittarAhmad Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Bonsoir à toutes et à tous,
Combien de chiffres après la virgule peut prendre un float? ainsi qu'un double ?
Je pense qu'un float peut prendre seulement 6 chiffres, mais à propos du double ?
Mille merci d'avance.
Amicalement,
Combien de chiffres après la virgule peut prendre un float? ainsi qu'un double ?
Je pense qu'un float peut prendre seulement 6 chiffres, mais à propos du double ?
Mille merci d'avance.
Amicalement,
A voir également:
- Précision : float et double
- Coordonnées gps précision - Guide
- Hon hai precision ps4 - Forum PS4
- Evga precision - Forum Logiciels
- Logitech precision gamepad driver - Télécharger - Pilotes & Matériel
- Tournevis de précision - Forum Matériel & Système
3 réponses
Accessoirement, j'ai résolu mon problème.
de 6 chiffres après la virgule pour le type float
de 15 chiffres après la virgule pour le type double
de 17 chiffres après la virgule pour le type long double
Bien cordialement,
de 6 chiffres après la virgule pour le type float
de 15 chiffres après la virgule pour le type double
de 17 chiffres après la virgule pour le type long double
Bien cordialement,
C'est bien plus compliqué que cela, en réalité cela dépend de l'amplitude de la valeur. Si ton nombre est proche de 1 tu auras effectivement plus ou moins ce que tu as dit, mais si tu as un nombre très grand (1 000 000 par exemple) ou très petit (0.000 001 par exemple) et bien le nombre de chiffres après la virgule s'adaptera... Sachant que les calculs se font en binaire, donc parler de chiffres après la virgule (sous entendu en décimal) n'a pas vraiment de sens !
Toute la logique de la chose est expliquée ici : IEEE 754
En Java tu peux utiliser la méthode Math.ulp pour connaitre la valeur de la précision, aussi bien en float qu'en double.
Toute la logique de la chose est expliquée ici : IEEE 754
En Java tu peux utiliser la méthode Math.ulp pour connaitre la valeur de la précision, aussi bien en float qu'en double.
System.out.println(Math.ulp(1f)); // 1.1920929E-7 System.out.println(Math.ulp(1d)); // 2.220446049250313E-16 System.out.println(Math.ulp(1000000f)); // 0.0625 System.out.println(Math.ulp(1000000d)); // 1.1641532182693481E-10 System.out.println(Math.ulp(0.000001f)); // 1.1368684E-13 System.out.println(Math.ulp(0.000001d)); // 2.1175823681357508E-22
A toutes fins utiles ==> https://www.commentcamarche.net/infos/25917-marquer-un-fil-de-discussion-comme-etant-resolu/