個人專案數獨

2021-08-19 02:09:59 字數 1074 閱讀 2200

2、每一行都要有1~9這9個數字填入;

3、每一列都要有1~9這9個數字填入;

4、每一塊都要有1~9這9個數字填入。

所以,01模型中列的定義就出來了。

(i,j,k表示在棋盤上i行j列填入數字k。)

1到81,表示棋盤中9*9=81個格仔是否填入了數字。如果是,則選取的01行在該01列上有1。

對應的01列編號為:(i-1)*9+j。

81+1到81*2,表示棋盤中9行,每行的9個不同的數字是否填入。棋盤上某行已經填入了某個數字,則在選取

的01行上, 對應的01列有1。

對應的01列編號為:81+(i-1)*9+k

81*2+1到81*3,表示棋盤中9列,每列的9個不同的數字是否填入。

對應的01列編號為:81*2+(j-1)*9+k

81*3+1到81*4,表示棋盤中9塊,每塊的9個不同的數字是否填入。

01行是狀態。數獨做完後的狀態是什麼,就是棋盤上每個格仔填入的究竟是什麼數字。

所以,01行表示的是,棋盤上某個格仔填入的是什麼數字

那01行的行數就是9*9*9。

每01行,既在棋盤中某個格仔填入乙個數字,會影響01矩陣的那些01列呢。

主要流程

這是程式的大致框架:

主要功能

base_solve()clear_solv_sudoku(int, int, int)update_ques_sudoku()search()

功能實現

總結通過這一次軟體工程個人專案,了解到了自己的不足,看到了自己**程式設計能力的薄弱,也學到了github

以後繼續努力

個人專案 數獨

個人專案 數獨 再附psp表乙份 personal software process stages 估計耗時 分鐘 實際耗時 分鐘 計畫30 40需求分析 包括學習新技術 00 生成設計文件00 設計複審00 規範00 具體設計 300360 具體編碼 600530 複審 5030 測試200 23...

個人專案 數獨遊戲

數獨 二 生成數獨終局 數獨 三 解數獨 數獨 四 測試與效能分析 數獨 五 總結 數獨 六 ui介面 下面是我預計在專案上花費的時間。psppersonal software process stages 預估耗時 分鐘 實際耗時 分鐘 planning 計畫25 estimate 估計任務用時 ...

軟體工程個人專案 數獨

專案位址 github倉庫 psp 2.1 personal software process stages 預計耗時 分鐘 實際耗時 分鐘 planning 計畫50 60estimate 估計這個任務需要多久 300360 development 開發240 270analysis 需求分析 2...