Applet & recursivite

  • Auteur de la discussion hbar11
  • Date de début

hbar11

Nouveau membre
Bonjour,
j'essaie pour m'entrainer de faire le jeu DEMINEUR.

j'ai mis le jeu + source code sur mon site

MAIS ..
je n'arrive pas a ce que la recursivite marche..
Nombre de voisin ayant une bombe voisine= nbVoisin

Dans Demineur, si une case a nbVoisin=0, on doit automatiquement devoiler ses cases voisines (ca ca marche)
si une des voisines a aussi nbvoisin=0, on doit aussi devoiler ses voisines etc etc...

mon applet n'aime pas cela...
j'ai du mettre la ligne de recursivite en commentaire
ligne 130+131 dans le fichier <AppletMineSweeper.java>

quelqu'un saurait me dire pourquoi ?????

merci d'avance
 

zeb

Modérateur
Bonjour,

Merci de publier ici les morceaux de code que tu veux voir commenter.
Sur l'art de publier un bout de code, merci de (re)lire le règlement de la cat' Programmation.
 

hbar11

Nouveau membre
voila le troncon de mon code JAVA qui ne marche pas.

Si j'ote les lignes 10 & 11 (celles qui font appel a la recursivite, mon code marche ???)
quelqu'un aurait-il un indice svp ?

Code:
	/** Devoile les cases voisines */
	private void devoileVoisines(int posX, int posY) {
        laGrilleMinee[posX][posY].unveilCase();
		for (int i = -1 ; i <= 1 ; i++) {
			for (int j = -1 ; j <= 1 ; j++) {
				if (i != 0 || j != 0) {
					if (positionExiste(posX+i, posY+j)) {
						laGrilleMinee[posX+i][posY+j].unveilCase();

                                              if (laGrilleMinee[posX+i][posY+j].numberOfNeighbour() == 0) {                        	                       devoileVoisines(posX+i,  posY+j);
						} 
					}
				}
			}
		}
	}
 

zeb

Modérateur
Vous devez être connecté pour voir les images.


Mais c'est
Code:
 ou [cpp], pas [java]. A croire que tu le fais exprès pour que ton message reste en haut de la liste !
 

zeb

Modérateur
Tu as un problème de récursivité infinie.

Exemple :
Pour la case 3x3, tu vérifies
2x2, 2x3, 2x4,
3x2, xxxx 3x4,
4x2, 4x3, 4x4.

Pour la case 3x3, tu vérifies
1x1, 1x2, 1x3,
2x1, xxxx 2x3,
3x1, 3x2, 3x3.

Et on recommence !
 

hbar11

Nouveau membre
ah oui !! super merci.
j'y avais pas pensé !! ca marche maintenant.
 

zeb

Modérateur
Spa une raison pour me laisser tes [java] !
Mets des
Code:
 à la place !!
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 131
Messages
6 717 955
Membres
1 586 382
Dernier membre
alejandrooo
Partager cette page
Haut