Autour des Sudoku
bdd | ||
images | ||
Solver | ||
main1.py | ||
main2.py | ||
main3.py | ||
main4.py | ||
main5.py | ||
README.md | ||
sudoku_grid.py | ||
sudoku_solver.py |
Autour des Sudoku
Diverses variations autour des Sudoku.
Licence
Tous les documents se trouvent ici avec la licence .
Description des fichiers
sudoku_grid.py
: module définissant une classeSudokuGrid
pour représenter les grilles de Sudoku.sudoku_solver.py
: module définissant une fonctionsolve
pour la résolution des grilles de Sudoku.main1.py
: script de résolution d'une grille décrite en argument sur la ligne de commande.main2.py
: script de résolution d'une grille contenue dans un fichier. Les solutions sont affichées dans le terminal.main3.py
: script de résolution de toutes les grilles contenues dans un fichier. Les solutions sont inscrites dans un fichier.main4.py
: script de résolution d'une grille décrite sur la ligne de commande, et qui produit une image représentant la recherche des solutions.main5.py
: scripy de résolution d'une grille décrite sur la ligne de commande, qui visualise le remplissage progressif de la grille.bdd/sudokus.bdd
: un fichier texte contenant la description de 5000 grilles de Sudoku ayant toutes une seule solution.bdd/sudoku17.bdd
: un fichier texte contenant la description de 49151 grilles de Sudoku n'ayant que 17 cases remplis et ayant toutes une seule solution.
Solveurs de Sudoku
Exemples d'utilisation
Visualiser la recherche de solution avec le script main4.py
Pour la grille ci-dessous (grille de la ligne 43 (en numérotant à partir de 0) du fichier bdd/sudokus.bdd
)
+-------+-------+-------+
| 2 . . | . 5 . | 8 4 . |
| . 1 . | 7 9 . | 5 . . |
| . . . | . . 4 | . . . |
+-------+-------+-------+
| . 8 1 | . . . | 2 . 9 |
| 3 . . | . . . | . . 5 |
| 7 . 6 | . . . | 3 1 . |
+-------+-------+-------+
| . . . | 9 . . | . . . |
| . . 8 | . 2 3 | . 5 . |
| . 6 3 | . 1 . | . . 7 |
+-------+-------+-------+
après la commande
./main4.py 200050840010790500000004000081000209300000005706000310000900000008023050063010007 images/sudokufiendish
on obtient, outre la solution, deux fichiers sudokufiendish.dot
et sudokufiendish.png
décrivant l'arbre de recherche des solutions suivant