0% ont trouvé ce document utile (0 vote)
57 vues5 pages

Projet Java Sudoku

Le projet consiste à développer un jeu de Sudoku interactif en Java, permettant de générer et résoudre des grilles de Sudoku tout en offrant une interface utilisateur. Les classes principales incluent Cellule, Grille, GenerateurGrille, Solveur, JeuSudoku et Main, chacune ayant des attributs et méthodes spécifiques. Des améliorations possibles incluent une interface graphique, des niveaux de difficulté, un chronomètre et des options de sauvegarde et de chargement.

Transféré par

mariemediallo364
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
57 vues5 pages

Projet Java Sudoku

Le projet consiste à développer un jeu de Sudoku interactif en Java, permettant de générer et résoudre des grilles de Sudoku tout en offrant une interface utilisateur. Les classes principales incluent Cellule, Grille, GenerateurGrille, Solveur, JeuSudoku et Main, chacune ayant des attributs et méthodes spécifiques. Des améliorations possibles incluent une interface graphique, des niveaux de difficulté, un chronomètre et des options de sauvegarde et de chargement.

Transféré par

mariemediallo364
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Institut Supérieur de l’Informatique Licence 3 RI POO/JAVA

Titre du Projet : Développement d'un Jeu de Sudoku Interactif en Java

Définition : Le but du jeu est de remplir la grille avec une série de chiffres
(ou de lettres ou de symboles) tous différents, qui ne se trouvent jamais
plus d’une fois sur une même ligne, dans une même colonne ou dans
une même région (également appelée « bloc », « groupe », « secteur » ou
« sous-grille »). La plupart du temps, les symboles sont des chiffres allant
de 1 à 9, les régions étant alors des carrés de 3 × 3. Quelques symboles
sont déjà disposés dans la grille, ce qui autorise une résolution progressive
du problème complet.

1. Objectif du projet

L'objectif est de créer une application Sudoku en Java qui permet :


Institut Supérieur de l’Informatique Licence 3 RI POO/JAVA

• De générer une grille de Sudoku valide.


• De résoudre une grille de Sudoku.
• De proposer une interface utilisateur (console ou graphique) pour
jouer.

2. Structure du projet (Classes principales)

2.1. Classe Cellule

Représente une cellule de la grille de Sudoku.

• Attributs :
o valeur : la valeur de la cellule (1 à 9 ou 0 si vide).
o estModifiable : un booléen pour indiquer si la cellule peut être
modifiée (utile pour l'interface utilisateur).
• Méthodes :
o Constructeur pour initialiser la cellule.

o Getters et setters pour valeur et estModifiable.

2.2. Classe Grille

Représente la grille de Sudoku (9x9).

• Attributs :
o cellules : un tableau 2D de Cellule (9x9).
• Méthodes :
o Constructeur pour initialiser une grille vide.

o estValide() : vérifie si la grille est valide.


Institut Supérieur de l’Informatique Licence 3 RI POO/JAVA

o estComplete() : vérifie si la grille est complète.


o getCellule(int ligne, int colonne) : retourne une cellule spécifique.
o setCellule(int ligne, int colonne, int valeur) : modifie la valeur
d'une cellule.

2.3. Classe GenerateurGrille

Génère une grille de Sudoku valide.

• Méthodes :
o genererGrille() : génère une grille complète aléatoirement.
o retirerCases(int nombre) : retire un certain nombre de cases pour
créer un puzzle.

2.4. Classe Solveur

Résout une grille de Sudoku.

• Méthodes :
o resoudre(Grille grille) : implémente un algorithme de
backtracking pour résoudre la grille.

2.5. Classe JeuSudoku

Gère le déroulement du jeu.

• Attributs :
o grille : la grille actuelle du jeu.
o solveur : une instance de Solveur.
Institut Supérieur de l’Informatique Licence 3 RI POO/JAVA

• Méthodes :
o demarrerJeu() : démarre le jeu.
o verifierGrille() : vérifie si la grille est correcte.
o afficherGrille() : affiche la grille dans la console.

2.6. Classe Main

Point d'entrée du programme.

• Méthodes :
o main(String[] args) : initialise et lance le jeu.

3. Fonctionnalités à implémenter

3.1. Génération de la grille

• Utilisez un algorithme pour générer une grille complète valide.


• Retirez des cases pour créer un puzzle jouable.

3.2. Résolution de la grille

• Implémentez un algorithme de backtracking pour résoudre la grille.

3.3. Interface utilisateur

• Console : affichez la grille et permettez à l'utilisateur de saisir des


valeurs.
• Graphique (optionnel) : utilisez Java Swing ou JavaFX pour une
interface graphique.
Institut Supérieur de l’Informatique Licence 3 RI POO/JAVA

4. Améliorations possibles

• Ajoutez une interface graphique avec Java Swing.


• Implémentez des niveaux de difficulté (facile, moyen, difficile).
• Ajoutez un chronomètre pour mesurer le temps de résolution.
• Permettez à l'utilisateur de sauvegarder et de charger des grilles.

Ce projet est un excellent moyen de pratiquer la POO en Java tout en


créant un jeu classique et amusant.

Bonne chance !

Vous aimerez peut-être aussi