数独

数独是一种逻辑游戏,玩家需要根据9x9盘面的已知数字,推理出剩余所有空格的数字,并满足每一行、每一列和每个粗线宫(3x3)内均含1~9,不重复。

MATLAB中有关函数

M = dlmread(filename,delimiter) 使用指定的分隔符,将该文件的数据读取到矩阵M中,并将重复的分隔符视为单个的分隔符

disp(x) 显示变量x的值,而不打印变量名称

代码实现

文件目录

check3_by_3.m   
check_cell.m
check_col.m
check_row.m
data.txt
shudu.m
slove.m

check3_by_3.m

 1 function res = check3_by_3(matrix,i,j,num)
 2 %检查(i,j)能否放num
 3     res = true;
 4     block_row = floor((i - 1) / 3) + 1;
 5     block_col = floor((j - 1) / 3) + 1;
 6     
 7     block_row_to = block_row * 3;
 8     block_row_from = block_row_to - 2;
 9     block_col_to = block_col * 3;
10     block_col_from = block_col_to - 2;
11     
12     for row = block_row_from : block_row_to
13         for col = block_col_from : block_col_to
14             if matrix(row,col) == num
15                 res = false;
16                 break;
17             end
18         end
19     end
20 end
View Code

相关文章:

  • 2022-03-04
  • 2021-09-27
  • 2022-01-24
  • 2021-06-09
  • 2021-09-21
  • 2022-12-23
猜你喜欢
  • 2021-12-24
  • 2021-04-11
  • 2021-12-24
  • 2021-08-21
  • 2022-01-15
  • 2021-05-12
  • 2021-12-18
相关资源
相似解决方案