diff --git a/2 b/2 new file mode 100644 index 0000000..2cb0d13 --- /dev/null +++ b/2 @@ -0,0 +1,43 @@ +int scan(int matrix[9][9], int r) +{ + int num = 0; + for (int i = 0;i < 9;i++) + { + if (matrix[r][i] != 0)num++; + } + return num; +} +void ran0(int matrix[9][9],int n) +{ + int count = 0; + int r, j, num; + while (count < 9) + { + do + { + r = rand() % 3; + num = scan(matrix, r + n); + } while (num >= 3); + do + { + j = rand() % 9; + } while (matrix[r+n][j] != 0); + matrix[r + n][j] = ++count; + } +} +void ran(int matrix[9][9]) +{ + ran0(matrix, 0); + ran0(matrix, 3); + ran0(matrix, 6); +} +int main() +{ + srand(time(NULL)); + int matrix[9][9] = { 0 }; + ran(matrix); + mat(matrix); + system("pause"); + return 0; +} +