C'est un sudoku et cette fonction doit mettre une valeur dans la grille et passer a la case suivante la colorier et tester a chaque fois si une valeur de T (contenant les valeurs possibles) n'est pas contraire aux regles du jeu. Cependant voici le resultat qui ca me donne :
Code :
+---+---+---+
|304|690|001|
|090|003|000|
|600|010|089|
+---+---+---+
|070|100|004|
|042|000|190|
|900|008|020|
+---+---+---+
|410|060|003|
|000|500|010|
|200|031|400|
+---+---+---+
else ok
while ok
if ok
prelsite
suivante c ok
+---+---+---+
|504|690|001|
|090|003|000|
|600|010|089|
+---+---+---+
|070|100|004|
|042|000|190|
|900|008|020|
+---+---+---+
|410|060|003|
|000|500|010|
|200|031|400|
+---+---+---+
else ok
while ok
if ok
prelsite
suivante c ok
+---+---+---+
|704|690|001|
|090|003|000|
|600|010|089|
+---+---+---+
|070|100|004|
|042|000|190|
|900|008|020|
+---+---+---+
|410|060|003|
|000|500|010|
|200|031|400|
+---+---+---+
else ok
while ok
if ok
prelsite
suivante c ok
+---+---+---+
|804|690|001|
|090|003|000|
|600|010|089|
+---+---+---+
|070|100|004|
|042|000|190|
|900|008|020|
+---+---+---+
|410|060|003|
|000|500|010|
|200|031|400|
+---+---+---+
else ok
while ok
if ok
prelsite
suivante c ok
Donc la fonction se rappelle mais sur la même case et s'arrete quand elle a essayer les 4 possibilité pour la première case. Je tient a préciser que les fonctions admissible et la fonction trouvant les valeurs possible et les stockant fonctionne bien .
Quelqu'un a une idée ? je deviens fou perso
Message édité par clawfire le 12-06-2007 à 17:00:45
Je viens de voir ... en effet et on est pas les 2 seuls a avoir des problèmes
Elmoricq
Modérateur
Posté le 12-06-2007 à 17:18:10
Par contre vous avez le même code. Quelle coïncidence !
clawfire
Posté le 12-06-2007 à 17:27:24
et bien la fonction la je l'ai écrite avec mes ptits doigts sur mon ptit pc portable donc bon ... apres qu'on ai le même code ca se tient si on a la meme fonction a faire nan ?
nORKy
Grmmph...
Posté le 13-06-2007 à 09:17:03
Et bien, je ne vois pas ou ta fonction fait sa récursivité
"||ajout||\n" devrait s'afficher pour qu'il y est récursivité, hors je ne le vois pas ; donc ind vaut NULL. A toi de trouver pourquoi.
On ne sait meme pas initialement ce que vallent les paramètres de ta fonction coloriser. On ne sais pas non plus ce que peut renvoyer admissible.
Nan, ca se tient pas dans le sens ou on a pas l'impression que toi même tu comprennes ce que 'tu' as codé. Cherche un peu.