Vous êtes sur la page 1sur 7

 Algorithme du jeu 

:
*Les lignes contiennent des nombres de 1 à 9 différents les uns des autres.

*Les colonnes contiennent des nombres de 1 à 9 différents les uns des autres.

*Les sous matrice [3,3] contient des nombres de 1 à 9 différents les uns des autres.

*Le remplissage se fait aléatoirement.

Algorithme de préparation de la grille du jeu:

Répéter

Vi1

Vf3

Répéter

Pour i de Vi à Vf faire

Pour j de Vi à Vf faire

Pour k de 1 à 9 faire

Répéter

T[k]aléa(9)

Jusqu’à (fréquence=vrai) et T[k]>=1 et T[k]<=9

M[i,j]T[k]

Fin pour

Fin pour

ViVi+3

VfVf+3

Jusqu’à(Vi=7)et(Vf=9)

Jusqu’à (vérification=vrai)

*la fonction fréquence :

Fonction fréquence (T :tab ;x :entier) :booléen

Var
Cpt ,i :entier

Fréq :booléen

Début

Cpt0

Pour i de 1 à n faire

Si (T[i]=x) alors

Cptcpt+1

fin si

fin pour

si cpt=0 alors fréqvrai

si non

fréqfaux

fin si

fin

Cette fonction vérifie que chaque élément du tableau T se trouve pour une seule fois et
comme le tableau T est transféré au sous carré[3,3] , on vérifie que les sous carrés ne
contiennent pas des nombres qui se répétent.

*la fonction vérification :

Fonction verification (n :entier ;M :mat) :booléen

Var

j,k,l,c :entier

verif :booléen

début

veriffaux

l1

c1

répéter
pour j de 1 à 8 faire

pour k de j+1 à 9 faire

si (M[l,j]<>M[l,k])et(M[j,c]<>M[k,c])

alors

verifvrai

sinon

veriffaux

fin pour

fin pour

ll+1

cc+1

jusqu’à(l=9) et (c=9)

verificationverif

fin

Cette fonction vérifie que chaque ligne et chaque colonne de la matrice remplie contient
des éléments différents les uns des autres.

*Commencement du jeu et choix du niveau de difficulté :

écrire (‘’ pour commencer le jeu tapez * ’’)

lire (rep)

si rep= ‘’*’’ alors

écrire (‘’choisir le niveau de difficulté du jeu / 1 :facile 2 :moyen 3 :difficile’’)

lire(choix)

pour i de 1 à 9 faire

pour j de 1 à 9 faire

S[i,j]M[i,j]

Fin pour
Fin pour

Si choix=1 alors

Pour i de 1 à 20 faire

X1aléa(9)

Y1aléa(9)

S[X1,Y1]0

Fin pour

Si non

Si choix=2 alors

Pour i de 1 à 40 faire

X2aléa(9)

Y2aléa(9)

S[X2,Y2]0

Fin pour

Si non

Si choix=3 alors

Pour i de 1 à 60 faire

X3aléa(9)

Y3aléa(9)

S[X3,Y3]0

fin pour

fin si

fin si

fin si

pour i de 1 à 9 faire

pour j de 1 à 9 faire
écrire(S[i,j])

fin pour

fin pour

répéter

écrire(‘’donner respectivement la ligne, la colonne ,et la valeur de la case à remplir )

lire (l,c,s[l,c])

jusqu’à terminaison=vrai

*fonction terminaison :

Fonction terminaison (n : entier, S : mat) : booléen

Var

i,j :entier

term :booléen

début

termfaux

pour i de 1 à 9 faire

pour j de 1 à 9 faire

si S[i,j]<>0 alors

termvrai

fin si

fin pour

fin pour

terminaisonterm

fin

Cette fonction permet de vérifier que la matrice à remplir par le joueur (matrice S) est
totalement remplie.

*comparaison entre la matrice remplie par le joueur (S) et la matrice solution (M) et résultat
du jeu :
Si ces deux matrices sont identiques alors le joueur gagne

Si non le joueur perd.

pour i de 1 à 9 faire

pour j de 1 à 9 faire

si S[i,j]=M[i,j] alors

écrire (‘’félicitation vous avez gagné’’ )

si non

écrire(‘’désolé vous avez perdu’’)

fin si

fin pour

fin pour

fin

Vous aimerez peut-être aussi