verifiaction si grille fini + ajout grille presque fini pour les tests

This commit is contained in:
Wilfried BRIGITTE 2024-04-29 19:15:12 +02:00
parent 6e5498b12e
commit 8724af4581
2 changed files with 20 additions and 9 deletions

View File

@ -12,6 +12,9 @@ public class grille extends JComponent{
/*tableau de valeurs de la grille de sudoku*/ /*tableau de valeurs de la grille de sudoku*/
public static int[][] grid_values = null; public static int[][] grid_values = null;
/*Panneau pour la grille */
public static JPanel place_grille = new JPanel();
/*fonction pour afficher graphiquement la grille*/ /*fonction pour afficher graphiquement la grille*/
public static void AfficherGrille (int[][] grille, boolean editable) { public static void AfficherGrille (int[][] grille, boolean editable) {
/*paramètre de base de la fenetre*/ /*paramètre de base de la fenetre*/
@ -20,8 +23,7 @@ public class grille extends JComponent{
/*fenetre.setResizable(false);*/ /*fenetre.setResizable(false);*/
fenetre.setLocationRelativeTo(null); fenetre.setLocationRelativeTo(null);
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
/*Panneau pour la grille */
JPanel place_grille = new JPanel();
place_grille.setSize(900,900); place_grille.setSize(900,900);
/*creation grille*/ /*creation grille*/
@ -125,7 +127,7 @@ public class grille extends JComponent{
if (verifier != null) { /* Vérification pour s'assurer que verifier a été initialisé */ if (verifier != null) { /* Vérification pour s'assurer que verifier a été initialisé */
verifier.addActionListener(new ActionListener() { verifier.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent verifier) { public void actionPerformed(ActionEvent verifier) {
VerificationGrilleFini();
} }
}); });
} }
@ -135,20 +137,18 @@ public class grille extends JComponent{
public void actionPerformed(ActionEvent exporter) { public void actionPerformed(ActionEvent exporter) {
for (int i=0; i < 9; i++){ for (int i=0; i < 9; i++){
for (int j=0; j < 9; j++){ for (int j=0; j < 9; j++){
System.out.print(GrilleActuelle(place_grille)[i][j]); System.out.print(GrilleActuelle()[i][j]);
} }
System.out.println(""); System.out.println("");
} }
if (!(resolveurGrille.resoudreSudoku(GrilleActuelle(place_grille)))){ if (!(resolveurGrille.resoudreSudoku(GrilleActuelle()))){
etat_exportation.setHorizontalAlignment(SwingConstants.LEFT); etat_exportation.setHorizontalAlignment(SwingConstants.LEFT);
etat_exportation.setText("Sudoku Impossible."); etat_exportation.setText("Sudoku Impossible.");
etat_exportation.setForeground(Color.RED); etat_exportation.setForeground(Color.RED);
System.out.println(1);
} else { } else {
ExporterGrille(GrilleActuelle(place_grille)); ExporterGrille(GrilleActuelle());
etat_exportation.setText(""); etat_exportation.setText("");
System.out.println(2);
} }
} }
}); });
@ -227,7 +227,7 @@ public class grille extends JComponent{
} }
} }
public static int[][] GrilleActuelle(JPanel place_grille){ public static int[][] GrilleActuelle(){
int[][] grilleActuelle = new int[9][9]; int[][] grilleActuelle = new int[9][9];
for (Component comp : place_grille.getComponents()) { for (Component comp : place_grille.getComponents()) {
@ -246,4 +246,14 @@ public class grille extends JComponent{
return grilleActuelle; return grilleActuelle;
} }
public static void VerificationGrilleFini(){
int[][] soluce_de_la_grille = new int[9][9];
soluce_de_la_grille = resolveurGrille.resoudreGrille(grid_values);
if(soluce_de_la_grille != GrilleActuelle()){
System.out.println("La grille n'est pas résolue");
}
System.out.println("La grille est resolue !!!");
}
} }

View File

@ -0,0 +1 @@
-q<╕╜▒Ь5T^u:0&и°╪вВl^▒)/a ╪),