int solve(int array[9][9]) { int i, j, solved = 0; for (i = 0; i <= 8; i++) { for (j = 0; j <= 8; j++) { if (input_number(array, i, j)) { printf("(%d, %d) => %d\n", i, j, array[i][j]); } else if (array[i][j] == 0) { solved = 0; } } } return solved; } int solve2(int array[9][9]) { int i, j, solved = 0, solutions = 0; while (!solved) { solved = 1; solutions = 0; for (i = 0; i <= 8; i++) { for (j = 0; j <= 8; j++) { if (input_number(array, i, j)) { printf("(%d, %d) => %d\n", i, j, array[i][j]); solutions++; } else if (array[i][j] == 0) { solved = 0; } } } if (solutions == 0) return 0; } return 1; }