Bonjour,
je voudrais créer un constructeur de fraction à partir d'un double.
Voici le code en question :
Quand je teste avec un double valant 0.401, la valeur de floor(decimal) vaut 400 au lieu de 401 quand j'arrive au troisième tour de boucle, ce qui est surprenant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 ZFraction::ZFraction(double decimal) { int compteur(0); while(floor(decimal)!=decimal) { decimal*=10.0; compteur++; } m_numerateur=decimal; m_denominateur=pow(10.0,compteur); simplifier(); }
Merci pour vos réponses.
Partager