1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
   | void back(int col,int ligne)
{
int val = 1; // pour test de valeur
if(valeur[col][ligne] == 0) // afin d'éviter qu'il ne test sur un nombre déja inscrit par l'utilisateur
{
	do
		{
			if(colo(col,val) && lign(ligne,val) && cas(col,ligne,val))// test si le nombre est déja présent dans la case, la ligne ou la colone
				{
					valeuressai[col][ligne] = val; //enregistre la valeur dans un tableau 9 9 d'essai
					if(col == 9)
						{
							if(ligne == 9)
								{
									enregistrer();//copie le tableau d'essai dans l'original si il a fini
 
								}
							else
								{
									back(0,ligne++); // sinon tester la case suivante
								}
						}
					else
						{
							back(col++,ligne);
						}
				}
			val++;
		}while(val < 10);
}
else // idem qu'au dessu mais sans le test de valeur(:) il y en a deja une
	{
		if(col == 8)
			{
				if(ligne == 8)
					{
						enregistrer();
					}
				else
					{
						back(0,ligne++);
					}
			}
		else
			{
				back(col++,ligne);
			}
	}
} | 
Partager