Bonjour bonjour,
J'ai un peu honte aujourd'hui de venir poster pour ça, j'ai souvenir que les float ne sont pas réellement de vrai Float, quand on cherche à lire leur contenu réel on obtient souvent des petits chiffres loin, très loin après la virgule...même si l'écart est plus que négligeable. Du coup y a t'il un lien avec le truc tout bête qui m'améne aujourd'hui :
Affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 cout << "pas strange" << endl; float i; for (i=0;i<=1;i=i+0.2) { cout << i << endl; }
Jusque la pas de problémes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 pas strange 0 0.2 0.4 0.6 0.8 1
Mais
Donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 cout << "strange" << endl; float i; for (i=0;i<=1;i=i+0.1) { cout << i << endl; }
strange
L'ennui c'est que ça fait planter l'application de mon code, si une âme charitable veut bien éclairer .. je lui en serai gré
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 strange 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
EDIT je code en c++ 11 et je compile avec gcc version 4.9.3 (GCC) sous windows 7
Partager