第6講 数独を作ろう!
第7話 数独プログラム改良にランダムを組み込む!
数独プログラムのさらなる改良
この改良はきわめて簡単です。
kk = Int(Rnd * n * n) + 1
For k = 1 To n * n
mah(i, j) = kk
・
・
・
owari:
kk = ((kk + 1) Mod (n * n)) + 1
Next
ピンクを加え青の部分を変更しただけです。
たったこれだけの変更で
7 | 5 | 6 | * | 3 | 9 | 2 | * | 1 | 4 | 8 |
9 | 1 | 4 | * | 8 | 5 | 6 | * | 2 | 3 | 7 |
2 | 8 | 3 | * | 7 | 1 | 4 | * | 5 | 9 | 6 |
* | * | * | * | * | * | * | * | * | * | * |
6 | 3 | 5 | * | 1 | 8 | 7 | * | 9 | 2 | 4 |
4 | 9 | 7 | * | 5 | 2 | 3 | * | 6 | 8 | 1 |
1 | 2 | 8 | * | 4 | 6 | 9 | * | 3 | 7 | 5 |
* | * | * | * | * | * | * | * | * | * | * |
8 | 4 | 1 | * | 9 | 3 | 5 | * | 7 | 6 | 2 |
3 | 7 | 2 | * | 6 | 4 | 1 | * | 8 | 5 | 9 |
5 | 6 | 9 | * | 2 | 7 | 8 | * | 4 | 1 | 3 |
とまったく自然な数独ができあがります。
第6話へ 第7講第1話へ
VB入門講義応用編トップへ
VB入門講義トップへ