Je suis en train d'essayer de comprendre le fonctionnement des floating dans différents langages de programmation (principalement C et Java d'ailleurs).
En C, j'ai le code suivant:
Code :
float value = 1.4;
printf ("value is : %f\n", value);
Le programme affiche la valeur "value is 1.3999999762"
En java, de manière similaire j'ai écrit:
Code :
float value = 1.4f;
System.out.println ("Value is : " + value);
et là j'obtiens la valeur 1.4. Pouvez-vous s.v.p. me donner un lien qui expliquerait comment java traite la norme IEEE754 ? J'ai aussi ce genre de petites différences quand force les parenthèses dans une addition de trois éléments, comme par exemple:
C et Java ne donnent pas le même résultat pour la même expression, et la réponse de C me paraît plus logique (c'est-à-dire plus proche de ce que je croyais avoir compris).
Marsh Posté le 18-05-2009 à 10:32:42
Je suis en train d'essayer de comprendre le fonctionnement des floating dans différents langages de programmation (principalement C et Java d'ailleurs).
En C, j'ai le code suivant:
Le programme affiche la valeur "value is 1.3999999762"
En java, de manière similaire j'ai écrit:
et là j'obtiens la valeur 1.4. Pouvez-vous s.v.p. me donner un lien qui expliquerait comment java traite la norme IEEE754 ? J'ai aussi ce genre de petites différences quand force les parenthèses dans une addition de trois éléments, comme par exemple:
C et Java ne donnent pas le même résultat pour la même expression, et la réponse de C me paraît plus logique (c'est-à-dire plus proche de ce que je croyais avoir compris).
D'avance merci pour votre aide et bonne journée!