[AS3] Boucle infinie (While)

Résolu
YoshK Messages postés 26 Date d'inscription   Statut Membre Dernière intervention   -  
 proutprout -
Bonjour,
j'ai beau chercher, je ne comprend pas pourquoi mon programme fait une boucle infinie au débug. Je vous met mon code tel quel, mais ne faite pas attention aux conditions, normalement n'importe où passe le programme il devrait sortir du "while" :

var mvtValide:Boolean = true;
	var i:int = 0;
	var j:int = 0;
	while(mvtValide && i < 4) {
		while(mvtValide && j < 4) {
			if(testTab[i][j] == 2) {
				if(i+testX<0 || i+testX>=colonnes || j+testY>=lignes) {
					mvtValide = false;
				}
				else if(gameTab[i+testX][j+testY] == 1) {
					mvtValide = false;
				}
			}
			else {
				j++;
			}
		}
		i++;
		j = 0;
	}


Merci d'avance !

2 réponses

pazz
 
Est-ce possible que tout tes testTab[i][j] sois égale à 2 ?

sinon je vois pas trop..
1
YoshK Messages postés 26 Date d'inscription   Statut Membre Dernière intervention  
 
Merci de m'avoir mis sur la voie ;)

Enfaite c'est une grosse erreur d'algorithme... Je n'incrémente QUE si je ne trouve pas un 2, donc lorsque je trouve un 2 je répète l'opération et retrouve le même 2... Et ainsi de suite créant donc une boucle infinie.

C'est dingue de passer autant de temps sur un code sans rien trouver pour finalement voir quelqu'un la trouver en 5 minutes.
0
pazz
 
c'est souvant les erreur les plus bête qui nous font passer le plus de temps.
0
pazz
 
Ha.. et c'est mon métié... ça aide ;)
0
proutprout
 
ouais
0