Sudoku est une sorte de jeu de puzzle. Il est l’un des meilleur moyen d’apprendre la logique, et dans le même temps, le langage Python est l’un des meilleurs langage informatique pour apprendre logique. Donc, si nous pouvons combiner ces deux types d’outils pour enseigner aux enfants ou jeunes gens à apprendre la logique, ce sera parfait. C’est pourquoi le projet soit terminé et va.
Vous pouvez étudier quoi et comment est-sudoku en page Wiki: http://en.wikipedia.org/wiki/Sudoku
Ce qui suit est un sudoku classique: |
et voici la solution pour elle: |
|
Les règles de base pour résoudre un sudoku est très facile:
Mettez le nombre de 1-9 pour chaque ligne (y compris X-Way et y aller) et chaque boîte.
chaque ligne et chaque boîte ne peuvent pas dupliquer le nombre de 1-9.
Si nous mettons le premier numéro d’une position (1, 1), il n’y a doit avoir 9 numéros peuvent être sélectionnés à mettre po Ensuite, nous avons mis le deuxième nombre dans la postion (1, 2), il existe doit avoir 8 chiffres peut être choisi de mettre po Donc, et comme il passe, nous pouvons écrire les nombres possibles, nous pouvons choisir dans toutes les positions:
9! | 6! | 3! | 6! | 3! | 1! | 3! | 1! | 1! |
---|---|---|---|---|---|---|---|---|
9 | 6 | 3 | 6 | 3 | 1 | 3 | 1 | 1 |
8 | 5 | 2 | 5 | 2 | 1 | 2 | 1 | 1 |
7 | 4 | 1 | 4 | 1 | 1 | 1 | 1 | 1 |
6 | 3 | 1 | 3 | 1 | 1 | 1 | 1 | 1 |
5 | 2 | 1 | 2 | 1 | 1 | 1 | 1 | 1 |
4 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
3 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Ainsi, les combinaisons possibles sont 9! * 6! * 3! * 6! * 3! 1 *! * 3! 1 *! * 1 * = 4,514,807,808,000
si nous utilisons python caculate il
>>> def n(x):
if x==1:
return 1
else:
return x*n(x-1)
>>> n(9)*n(6)*n(3)*n(6)*n(3)*n(1)*n(3)*n(1)*n(1)
Sur les mathématiques de sudoku, vous pouvez l’obtenir à Wiki, http://en.wikipedia.org/wiki/Mathematics_of_Sudoku