verifiaction si grille fini + ajout grille presque fini pour les tests
This commit is contained in:
parent
6e5498b12e
commit
8724af4581
@ -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 !!!");
|
||||||
|
}
|
||||||
}
|
}
|
1
Sudoku/grille/exemplePresqueFini.gri
Normal file
1
Sudoku/grille/exemplePresqueFini.gri
Normal file
@ -0,0 +1 @@
|
|||||||
|
-q<╕╜▒Ь5T^u:0&и°╪в╘Вl^▒)/a╪),
|
Loading…
Reference in New Issue
Block a user