diff --git a/src/main.c b/src/main.c index 9601568..301df2b 100644 --- a/src/main.c +++ b/src/main.c @@ -3,8 +3,35 @@ #include #include +#include "sudoku.h" + int main(int argc, char **argv) { (void)argc, (void)argv; - printf("%s\n", "Hello, World!"); + u16 board[SUDOKU_DEPTH_2] = { + // clang-format off + 0x010, 0x004, 0x000, 0x000, 0x040, 0x000, 0x000, 0x000, 0x000, + 0x020, 0x000, 0x000, 0x001, 0x100, 0x010, 0x000, 0x000, 0x000, + 0x000, 0x100, 0x080, 0x000, 0x000, 0x000, 0x000, 0x020, 0x000, + 0x080, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x004, + 0x008, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x001, + 0x040, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x000, 0x020, + 0x000, 0x020, 0x000, 0x000, 0x000, 0x000, 0x002, 0x080, 0x000, + 0x000, 0x000, 0x000, 0x008, 0x001, 0x100, 0x000, 0x000, 0x010, + 0x000, 0x000, 0x000, 0x000, 0x080, 0x000, 0x000, 0x040, 0x100, + // clang-format on + }; + sudoku_init(board); + sudoku_print(board); + sudoku_solve_step(board); + sudoku_print(board); + sudoku_solve_step(board); + sudoku_print(board); + sudoku_solve_step(board); + sudoku_print(board); + sudoku_solve_step(board); + sudoku_print(board); + sudoku_solve_step(board); + sudoku_print(board); + return EXIT_SUCCESS; } diff --git a/src/sudoku.c b/src/sudoku.c index 4fa09a4..452f6df 100644 --- a/src/sudoku.c +++ b/src/sudoku.c @@ -47,6 +47,7 @@ void sudoku_print(const u16 *board) { for (uint i = 0; i < SUDOKU_DEPTH_2; i++) { char tile; switch (board[i]) { + case 0: tile = 'x'; break; case SUDOKU_1: tile = '1'; break; case SUDOKU_2: tile = '2'; break; case SUDOKU_3: tile = '3'; break; @@ -60,6 +61,7 @@ void sudoku_print(const u16 *board) { }; printf("| %c ", tile); + // printf("|%3i", board[i]); if (i % 9 == 8) printf("|\n"); } printf("+———-———-———-———-———-———-———-———-———+\n");