Ajout javadoc Cell.java,GenerateGrid.java,Grid.java | Amélioration UI

This commit is contained in:
2024-05-04 17:56:30 +02:00
parent c3d2bd70d4
commit 0c81953d8d
8 changed files with 316 additions and 123 deletions

View File

@@ -1,14 +1,18 @@
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* La classe Grid représente une grille de Sudoku composée de cellules.
*/
public class Grid {
private Cell[][] cells;
/**
* Constructeur par défaut qui initialise une grille de Sudoku vide.
*/
public Grid() {
cells = new Cell[9][9];
for (int ligne = 0; ligne < 9; ligne++) {
@@ -18,6 +22,10 @@ public class Grid {
}
}
/**
* Charge une grille de Sudoku à partir d'un fichier.
* @param fileName Le nom du fichier à partir duquel charger la grille avec extension ".gri".
*/
public void loadGridFromFile(String fileName) {
try (DataInputStream input = new DataInputStream(new FileInputStream(fileName))) {
for (int ligne = 0; ligne < 9; ligne++) {
@@ -33,16 +41,15 @@ public class Grid {
}
}
System.out.println("Success");
System.out.println(this);
} catch (FileNotFoundException e) {
System.err.println("Erreur : Fichier non trouvé: " + e.getMessage());
} catch (EOFException e) {
System.err.println("Erreur : Fin de fichier atteinte prématurément: " + e.getMessage());
} catch (IOException e) {
System.err.println("Erreur d'entrée/sortie: " + e.getMessage());
System.err.println("Error: " + e.getMessage());
}
}
/**
* Sauvegarde la grille de Sudoku dans un fichier ".gri".
* @param fileName Le nom du fichier dans lequel sauvegarder la grille.
*/
public void saveGridToFile(String fileName) {
try (DataOutputStream output = new DataOutputStream(new FileOutputStream(fileName))) {
for (int ligne = 0; ligne < 9; ligne++) {
@@ -54,17 +61,25 @@ public class Grid {
output.writeInt(Integer.parseInt(line.toString()));
}
System.out.println("Grille sauvegardée avec succès dans " + fileName);
} catch (FileNotFoundException e) {
System.err.println("Erreur : Fichier non trouvé: " + e.getMessage());
} catch (IOException e) {
System.err.println("Erreur d'entrée/sortie: " + e.getMessage());
System.err.println("Erreur lors de la sauvegarde de la grille: " + e.getMessage());
}
}
/**
* Obtient la cellule à la position spécifiée dans la grille.
* @param ligne L'indice de ligne de la cellule.
* @param col L'indice de colonne de la cellule.
* @return La cellule à la position spécifiée.
*/
public Cell getCell(int ligne, int col) {
return cells[ligne][col];
}
/**
* Copie le contenu d'une autre grille dans cette grille.
* @param second_grid La grille à partir de laquelle copier les valeurs.
*/
public void copyFrom(Grid second_grid) {
for (int row = 0; row < 9; row++) {
for (int col = 0; col < 9; col++) {
@@ -73,6 +88,9 @@ public class Grid {
}
}
/**
* Affiche la grille de Sudoku dans la console.
*/
public void printGrid() {
for (int row = 0; row < 9; row++) {
for (int col = 0; col < 9; col++) {
@@ -81,4 +99,4 @@ public class Grid {
System.out.println();
}
}
}
}