Salut,
Il y a un problème avec cette boucle :
1 2 3 4
| while (y>25) {
u=u+25;
x++;
} |
Si y <= 25, on entre pas dans la boucle, ok. Mais si y>25, on entre dans la boucle, et on en sort jamais, parce que y restera à la valeur qu'il a (rien ne le change dans la boucle), et donc restera toujours supérieur à 25.
Ce qu'il se passe, c'est qu'à la première itération du do/while, y vaut y=21.299999999999997, donc <=25, donc on entre pas dans le while, on continue, et ça affiche :
Semaine 1.0 : 10.0 x 2.13 = 21.299999999999997 + 0.0 = 21.299999999999997 - 0.0 = 21.299999999999997
1.0
et à la seconde itération, y=42.599999999999994, donc y>25, donc on entre dans la boucle while et on boucle infiniment.
Ne jamais faire de condition de boucle sur des variables qu'on ne fait pas varier dans la boucle !
Partager