diff --git a/main.c b/main.c index 87405e3..dd3c873 100644 --- a/main.c +++ b/main.c @@ -5,10 +5,14 @@ #include "puzz.h" +#include #include #include +#include #include +enum { UNKNOWN = 0xfe }; + int main(void) { struct timeval tv; @@ -21,5 +25,27 @@ int main(void) gen(); print(); + puzz_t field; + memset(field, UNKNOWN, sizeof(field)); + + for (int y = 0; y < HEIGHT; ++y) { + for (int x = 0; x < WIDTH; ++x) { + char c; + switch (field[x][y]) { + case UNKNOWN: + c = '?'; + break; + case MINE: + c = 'x'; + break; + default: + c = '0' + field[x][y]; + break; + } + putchar(c); + } + putchar('\n'); + } + return 0; } diff --git a/puzz.c b/puzz.c index 73fa2ac..f86dbb7 100644 --- a/puzz.c +++ b/puzz.c @@ -42,9 +42,11 @@ void gen(void) void print(void) { + puts("Solution:"); for (int y = 0; y < HEIGHT; ++y) { for (int x = 0; x < WIDTH; ++x) putchar(soln[x][y] == MINE ? 'x' : '0' + soln[x][y]); putchar('\n'); } + putchar('\n'); }