Vous êtes sur la page 1sur 2

MINI PROJET C 1A INFO Mme Maroua Ben Slimane

ENIT 1A TEL Mme Salsabil Besbes

Mini-projet N°5
Jeu SUDOKU

Il s'agit de produire un programme (fichiers source et un exécutable testé et opérationnel avec


la documentation), dont le sujet est présenté dans ce document. Le développement de ce
programme se fera en langage C.
Objectifs du projet : Valider les compétences du cours « Programmation Procédurale en C »
par l’écriture d’un programme original en langage C, correspondant à 21 heures de travail
effectif.
Organisation : Les étudiants travaillent en binôme
A rendre :
 Le programme source complet largement commenté
 Un exécutable testé et opérationnel
 Un rapport présentant le travail effectué :
1. Organisation du programme : découpage en fonctions, rôle de ces fonctions,
explications du programme
2. Mode d’emploi du programme
3. Bilan du travail, difficultés rencontrées, etc.
Évaluation du projet
Elle repose sur les éléments suivants :
 Le programme source :
 Respect de l’énoncé, originalité du thème proposé,
 Qualité technique du programme : découpage en fonctions, instructions,
algorithmes, efficacité, gestion des erreurs…
 Présentation du programme : indentation, commentaires et nommage
 Documentation fournie
 Organisation du programme et son mode d’emploi

Enoncé :
On se propose de développer le jeu SUDOKU en C.

Le Sudoku (http ://fr.wikipedia.org/wiki/Sudoku) est un jeu de grille, où le joueur doit remplir


une grille de 81 cases, composée de 3x3 sous-grilles. Chaque sous-grille étant elle-même de 3
cases sur 3. Chaque case contient un chiffre entre 1 et 9. Au départ, le joueur se voit présenté
une grille partiellement remplie, et doit étapes par étapes trouver comment remplir les cases
pour que la grille soit parfaite.
Une grille est dite parfaite si :
- chaque ligne de la grille contient tous les chiffres de 1 à 9 ;
1
- chaque colonne de la grille contient tous les chiffres de 1 à 9 ;
- chaque sous-grille de la grille contient tous les chiffres de 1 à 9 ;
Le développement de cette application consiste en quatre phases :
1. Mettre en place la fonctionnalité de création de la matrice parfaite que le joueur va
essayer de trouver ;
2. Mettre la place la fonctionnalité de création de la matrice à trou que le joueur va remplir
au fur-et-à-mesure du jeu, à partir de la matrice parfaite crée précédemment ;
3. Mettre en place la fonctionnalité d’affichage de la matrice courante ;
4. Mettre en place le programme principal de jeu ;

1) Créer une grille parfaite


Mettre en place une procédure visant à créer une matrice de 9x9 cases, stockant la
matrice "solution", que le joueur va essayer de trouver. On pourra ici utiliser la
matrice parfaite suivante :

2) Créer la grille de jeu à partir de la grille parfaite


La grille de référence servira de base pour créer une grille à trou, qui est celle qui sera
montrée à l’utilisateur et remplie au fur et à mesure des tours. Cette fonctionnalité sera
paramétrée par un entier compris entre 1 et 3, suivant le niveau de difficulté désiré de la
grille (une grille est d’autant plus difficile que le nombre de trous initial est important).
Pour une même grille parfaite et le même niveau de difficulté, deux appels à cette
fonctionnalité pourront fournir deux grilles de jeu différentes.
3) Afficher la grille de jeu courante
Mettre en place une fonction prenant en argument la grille de jeu courante et
l’affichant d’une manière compréhensible par l’utilisateur.

Vous aimerez peut-être aussi