如何設計數獨題目

也可以參考這個網站
http://www.pro.or.jp/~fuji/numplace/makeproblem/numplace01.html.en
雖然是英文的
但是都有圖片標示詳細的製作過程
值得去研究看看

這裡把製作數獨過程的原則要旨整理如下
1. 先畫出9 * 9的格子,然後決定那些格子有數字提示(稱為"提示格")
   那些格子空白(稱為"白格")讓解題者填(通常提示格的數量在30格以內)。

2. 任選一個白格,填入任何一個合理的數字(例如:7),(等到全部格子都填好後再擦掉)。
3. 在一些提示格裡填入步驟2.選擇的數字(7)(用到的提示格越少越好),
   使得步驟2.的白格只能填入這個數字(7),無其他的填法。
4. 在白格優先的條件下,檢查有沒有格子只能填入步驟2.選擇的數字(7)
   如果有的話,就填上去(如果有符合的白格,就不要填入提示格;要是沒有白格符合,才考慮提示格)。
5. 檢查所有的提示格與白格,看看是否有格子只有一種數字可以填
   (不一定是步驟2.選擇的數字),如果有的話,就填上去。

6. 重複2.~5.的步驟,直到整個盤面填滿為止,越到後面,就越不能有閃失。

7. 填好後,把所有白格的數字擦掉,自己先玩一次試試看。

8. 如果試玩的結果確定這個數獨正確無誤,就大功告成了。 

96.2.1 起, ccliaw 嘗試以PHP程式寫數獨題目設計,歷經一個月努力,勉強達成,仍有些問題
搶鮮提出,以供參考建議 96.2.23 ccliaw 的數獨題目PHP設計