Format et précision d'un float (google n'est pas mon amis). Debutant - C - Programmation
Marsh Posté le 05-06-2008 à 09:33:39
NAME |
C'est où??
J'ai testé info printf il y a 30 pages...
Marsh Posté le 05-06-2008 à 09:46:50
Merci, peux tu m'expliquer a quoi correspond le parametre 3? stp.
Edit : j'ai une seconde question, je calcule divers coefficients de regression lineaire. Je dois ensuite en faire la moyenne et multiplier ces moyennes. Bref je me retrouve avec ce genre de nombre :
printf("%.100f",chiffr);
0.9999957084655761718750000000000000000000000000000000000000000000000000000000000000000000000000000000
Est-il possible que le langage c rajoute des chiffres erronés dans les décimales qui n'appartienent pas au calcul? Ou est-ce qu'il se débrouille pour ne pas introduire de chiffre superflus?
Si je fais :
a = 0.3232*2;
printf("%.100F\n",a);
a contient 0.6463999748229980468750000000000000000000000000000000000000000000000000000000000000000000000000000000 Hmmm comment éviter ceci?
Marsh Posté le 05-06-2008 à 10:27:40
la précision d'un float n'est pas infinie :
http://docs.sun.com/source/806-3568/ncg_goldberg.html
Marsh Posté le 05-06-2008 à 10:32:09
Joel F a écrit : la précision d'un float n'est pas infinie : |
ok je vais lire ceci. Si la précision n'est pas infinie, un tronquage ne me dérange pas, cependant des chiffres apparaissant comme par magie me pose probleme.
Marsh Posté le 05-06-2008 à 10:42:25
bah en gros float ca doit etre 8 chiffres signifcatifs. Quadn tu lui demandes d'en afficher, il affiche ce qu'il peut et il remplit le reste de 0
Marsh Posté le 05-06-2008 à 10:44:43
Voir le papier justement. Les IEEE sont codés en binaire selon une certaine méthode. Donc ça "tronque" très peu souvent d'une manière plaisante en base 10. La représentation est la meilleure possible.
Marsh Posté le 05-06-2008 à 11:01:15
Je me pose une question par rapport à perl qui représente tout en double par défaut. Quel est le plus grand intervalle d'entiers, avec x et y appartenant à cet intervalle, dans lequel double(x) OP double(y) est exacte ?
Marsh Posté le 05-06-2008 à 11:16:43
c'est une exemple du papier de tête. Je l'ai aussi fait faire en TP d'architecture, faut que je le retrouve
Marsh Posté le 05-06-2008 à 09:11:56
Salut à tous et à toutes,
Je cherche depuis 10 minutes un petit cours pour formater les float, je me rappelle que l'on peut préciser le nombre de décimales à stocker. Seulement, j'aimerais trouver un cours détaillé sur ce formatage, or je ne trouve rien sur le net. Je dois rentrer les mauvais mots clés.
Pourriez vous m'éclairer?
Merci
Message édité par jijiz le 05-06-2008 à 09:58:50