
使用MATLAB解决数独问题。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
基于MATLAB GUI数独游戏代码中的函数 `start_Callback(hObject, eventdata, handles)`,全局变量 `A`、`B`、`begin` 和 `kk` 被初始化。首先,`begin` 设置为 1,表示游戏已启动。矩阵 `A` 被初始化为一个9x9的数独棋盘,包含从1到9的数字,并以二维数组的形式存储。随后,程序清除先前状态 `clear2(handles)`。接下来,进入循环,对每一行进行随机变换:使用 `randi` 函数生成随机索引 `j` 和 `k`,并利用 `rchange(A, j, k)` 函数对矩阵 `A` 进行行列交换。此过程重复三次以处理每一行。然后,程序对每一列执行类似的随机变换,使用 `cchange(A, j, k)` 函数进行行列交换,同样重复三次。最后,获取当前关卡难度级别 `str` 的值(1到10),根据不同的难度级别设置变量 `k` 的值。如果选择的关卡是 10,则使用获取到的数值作为 k 的值. 将变量 kk 设置为 k 值. 更新显示框中显示的字符串为“空格: ,num2str(k),/,num2str(k)” ,即显示当前关卡数值. 矩阵 B 被初始化为 wakong(k,handles) 的结果. 调用 output(handles, A, B) 函数输出结果. 将标签 disp2 的文本内容设置为“已开始!”。启动计时器并设置标签 time 的文本内容为“计时中……” 。启用标签 ans 和 “check” 的功能状态。
全部评论 (0)
还没有任何评论哟~


