nsi:projets:tableaux:sudoku
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| nsi:projets:tableaux:sudoku [2022/04/03 14:46] – ↷ Liens modifiés en raison d'un déplacement. goupillwiki | nsi:projets:tableaux:sudoku [2024/12/05 16:39] (Version actuelle) – goupillwiki | ||
|---|---|---|---|
| Ligne 20: | Ligne 20: | ||
| # solveur de sudoku | # solveur de sudoku | ||
| - | # grille représente une grille de sudoku. | + | # grille représente une grille de sudoku. |
| - | def connnus_ligne(grille, | + | def read_cell(grille: |
| + | ''' | ||
| + | renvoie le contenu de la grille pour ligne et colonne indiquée | ||
| + | ''' | ||
| + | |||
| + | def set_cell(grille: | ||
| + | ''' | ||
| + | Écrit la valeur désirée dans la grille, à la ligne et colonne indiquée. | ||
| + | ''' | ||
| + | |||
| + | def connnus_ligne(grille:list, ligne:int) -> list: | ||
| ''' | ''' | ||
| cette fonction renvoie tous les chiffres déjà écrits dans une certaine ligne | cette fonction renvoie tous les chiffres déjà écrits dans une certaine ligne | ||
| Ligne 29: | Ligne 39: | ||
| ''' | ''' | ||
| | | ||
| - | def connus_colonne(grille, | + | def connus_colonne(grille:list, colonne:int) -> list: |
| ''' | ''' | ||
| même chose pour une colonne | même chose pour une colonne | ||
| ''' | ''' | ||
| - | def connus_region(grille, | + | def connus_region(grille:list, ligne:int, colonne:int) -> list: |
| ''' | ''' | ||
| même chose pour une région | même chose pour une région | ||
| ''' | ''' | ||
| | | ||
| - | def restants(grille, | + | def restants(grille:list, ligne:int, colonne:int) -> list: |
| ''' | ''' | ||
| cette fonction, pour une certaine ligne et colonne, | cette fonction, pour une certaine ligne et colonne, | ||
| Ligne 48: | Ligne 58: | ||
| ''' | ''' | ||
| - | def solve(grille): | + | def solve(grille:list): |
| ''' | ''' | ||
| - | | + | |
| pour chaque case vide, regarde les candidats possibles, | pour chaque case vide, regarde les candidats possibles, | ||
| s'il n'y en a qu'un seul, écrit ce candidat dans la case. | s'il n'y en a qu'un seul, écrit ce candidat dans la case. | ||
| Ligne 66: | Ligne 76: | ||
| * Bien documenter les fonctions | * Bien documenter les fonctions | ||
| * prévoir au moins un exemple de résolution | * prévoir au moins un exemple de résolution | ||
| + | </ | ||
| + | |||
| + | <WRAP danger> | ||
| + | J'ai vu de nombreuses fois des élèves utilisant une méthode toute faite à base de fonction récursive et à laquelle ils ne comprenaient pas grand chose... | ||
| + | |||
| + | Cette méthode est **interdite** pour ce projet : pas de fonction récursive. | ||
| </ | </ | ||
nsi/projets/tableaux/sudoku.1648989997.txt.gz · Dernière modification : de goupillwiki
