X-Git-Url: https://git.cworth.org/git?p=ttt;a=blobdiff_plain;f=src%2Ftest-board.c;h=313573528a0c156a57c59351ee39409bd7fbe2b9;hp=b5929be97c39cc2000d1407f5c035923a365a3e4;hb=a17b73b1671accfb7d68f6e07616a265ae64e500;hpb=86a51cdf0b8c10d02ace7489d0a4683a206e3e7c diff --git a/src/test-board.c b/src/test-board.c index b5929be..3135735 100644 --- a/src/test-board.c +++ b/src/test-board.c @@ -1,46 +1,53 @@ /* Test ttt-board.c */ -#include #include "ttt-board.h" -int ttt_board_make_move (ttt_board_t *board, int move); - -int m; - -int ttt_board_make_move (ttt_board_t *board, int move) -{ - putchar(move); - if (board->cells[m] == '_') +int ttt_board_is_won (ttt_board_t *board) +{ + if ( + (board->cells[0] == board->cells[3] && board->cells[3] == board->cells[6] && board->cells[0] != TTT_CELL_EMPTY) || + (board->cells[1] == board->cells[4] && board->cells[4] == board->cells[7] && board->cells[1] != TTT_CELL_EMPTY) || + (board->cells[2] == board->cells[5] && board->cells[5] == board->cells[8] && board->cells[2] != TTT_CELL_EMPTY) || + (board->cells[0] == board->cells[1] && board->cells[1] == board->cells[2] && board->cells[0] != TTT_CELL_EMPTY) || + (board->cells[3] == board->cells[4] && board->cells[4] == board->cells[5] && board->cells[3] != TTT_CELL_EMPTY) || + (board->cells[6] == board->cells[7] && board->cells[7] == board->cells[8] && board->cells[6] != TTT_CELL_EMPTY) || + (board->cells[0] == board->cells[4] && board->cells[4] == board->cells[8] && board->cells[0] != TTT_CELL_EMPTY) || + (board->cells[2] == board->cells[4] && board->cells[4] == board->cells[6] && board->cells[2] != TTT_CELL_EMPTY) + ) { - board->cells[m] = 'X'; + printf ("%c's Win! ", board->current_player); return(1); } else - { return(0); - } } - int main (void) { ttt_board_t board; - - + int m, i, newline; + ttt_board_init (&board); - printf ("This is the board \""); - ttt_board_write (&board, stdout); - printf ("\"\n"); - - printf ("Make a move"); - m = getchar(); - ttt_board_make_move (&board, m); + for (i = 0; i <= 8; i++) + { + printf ("This is the board \""); + ttt_board_write (&board, stdout); + printf ("\"\n"); + + printf ("Make a move \n"); + m = getchar(); + newline = getchar(); + printf ("getchar returned a numeric value of %d which is character '%c'\n", m, m); + m = m - '0'; + ttt_board_make_move (&board, m); + } printf ("This is the board \""); ttt_board_write (&board, stdout); - printf ("\"\n"); + printf ("\"\n"); + return 0; }