probleme de bloucle for... - Java - Programmation
Marsh Posté le 13-01-2006 à 16:33:25
blaise_laporte a écrit : ... |
Pour moi, les 2 itérations de la boucle se passent bien. C'est juste que ta 2ème courbe ne contient que 2 points.
PS : ton code est totallement illisible, utilise des variables locales au lieu d'apeler 46 fois ((Courbe)lc.get(rangXMax)).getXMax().getX()
ex:
Code :
|
Marsh Posté le 13-01-2006 à 17:02:13
Merci pour les conseil de lisibilité. C'est des reflexes que j'ai pas encore aquis.
Du coup, mon code donne ceci:
Code :
|
mais en sortie j'ai de nouveau:
Citation : |
Le trie ne ce fais pas corectement (yMax devrait etre 500.0 et xMin 1.0) de même que les System.out.println a la fin de la boucle for ne s'execute pas.
Marsh Posté le 13-01-2006 à 17:09:44
J'ai la nette impression que tu n'as pas compris le but de la commande "continue".
"Continue" ça va directement à la fin de l'itération de boucle actuelle, pour passer au prochain "tour", ça ne veut pas dire qu'on continue à exécuter le code actuel (ce qui n'aurait aucun intérêt )
Résultat, dès qu'il a un test qui réussit (pas de modifications à effectuer sur un paramètre) il saute à la fin du for et passe au prochain tour (ou à la fin de la boucle si la liste de courbes est terminée)
Et accessoirement ya des trucs qu'on appelle les débuggers, ça marche vachement bien
Marsh Posté le 13-01-2006 à 17:25:46
En effet, j'avais pas compris continue...
Pour ce qui est des debuggers, j'ai essayé une fois, mais j'y conprenai que dalle. Mais j'était vraiment newbies en progra (si si, plus que maintenant ) je vais essayé de m'y remettre.
Merci!
Marsh Posté le 13-01-2006 à 19:30:49
à la place de tes continue tu fais ça :
Code :
|
tes continue zappent forcément les affichages, donc il faut les virer, et inverses le test (> devient <=, etc.)
Marsh Posté le 13-01-2006 à 19:59:17
trevor a écrit : et inverses le test (> devient <=, etc.) |
Ou alors il remplace if(condition) par if(!condition)
Marsh Posté le 13-01-2006 à 21:16:40
Reply
Marsh Posté le 13-01-2006 à 15:32:25
Voila, j'ai le constructeurs suivant
(oui, je sais que ce n'est pas forcement une bonne idée de mettre tout ça dans le constructeur, mais c'est pour mes test)
L'objet ArrayListe que je met en parametre contient deux objet Courbe.
A l'execution, j'obtient ceci:
test0
PointMesure[10.0, 45.0]
PointMesure[100.0, 40.0]
PointMesure[1000.0, 20.0]
PointMesure[10000.0, 30.0]
PointMesure[100000.0, 0.0]
rangXMax =0
rangYMax =0
rangXMin =0
rangYMin =0
test1
PointMesure[1.0, 300.0]
PointMesure[10.0, 500.0]
xMax = 100000.0
yMax = 500.0
xMin = 1.0
yMin = 0.0
Je rentre une premiere fois dans la boucle for et execute toutes les lignes.
a la deuxieme fois (deuxieme objet Courbe) il rentre dans la boucle, execute la premiere ligne, mais zap totalement les System.out.println de fin...
Moi pas comprendre!