Files
Sudoku/app/src/test/java/sudoku/TestSudokuLettres.java

62 lines
2.2 KiB
Java

package sudoku;
import java.util.ArrayList;
import java.util.List;
import org.junit.jupiter.api.Test;
public class TestSudokuLettres {
@Test
public void sudokuLettres() {
System.out.println("TEST SUDOKU LETTRES : ");
// Create a new Sudoku
Sudoku sudoku = new Sudoku(9);
List<Symbole> symboles = new ArrayList<>();
symboles.add(Symbole.of("L"));
symboles.add(Symbole.of("E"));
symboles.add(Symbole.of("T"));
symboles.add(Symbole.of("T"));
symboles.add(Symbole.of("R"));
symboles.add(Symbole.of("E"));
symboles.add(Symbole.of("S"));
symboles.add(Symbole.of("O"));
symboles.add(Symbole.of("H"));
sudoku.getGrille()
.setSymbolesPossibles(new ArrayList<>(symboles));
sudoku.ajouterContrainte(new ContrainteLigne());
sudoku.ajouterContrainte(new ContrainteColonne());
sudoku.ajouterContrainte(
new ContrainteBloc(sudoku.getGrille().getTaille() / 3, sudoku.getGrille().getTaille() / 3));
sudoku.getGrille().setCase(0, 0, Symbole.of("L"));
sudoku.getGrille().setCase(6, 1, Symbole.of("E"));
sudoku.getGrille().setCase(2, 2, Symbole.of("T"));
sudoku.getGrille().setCase(0, 3, Symbole.of("T"));
sudoku.getGrille().setCase(4, 4, Symbole.of("R"));
sudoku.getGrille().setCase(0, 5, Symbole.of("E"));
sudoku.getGrille().setCase(5, 6, Symbole.of("S"));
sudoku.getGrille().setCase(0, 7, Symbole.of("O"));
sudoku.getGrille().creerBlocCarre();
System.out.println("Sudoku :");
System.out.println(sudoku.getGrille().toString());
System.out.println("Blocs :");
sudoku.getGrille().printBlocs();
System.out.println("Symboles possibles :");
sudoku.getGrille().printSymbolesPossibles();
ResolveurBacktraceSimple resolveur = new ResolveurBacktraceSimple();
boolean solved = resolveur.resoudre(sudoku, false);
System.out.println("Sudoku " + (solved ? "résolu" : "non résolu") + " :");
System.out.println(sudoku.getGrille().toString());
System.out.println("FIN TEST SUDOKU LETTRES");
}
}