From 40841fd471932ab3ba4a080d71431bfe586ca335 Mon Sep 17 00:00:00 2001 From: "sabrina.lapaire" <sabrina.lapaire@etu.hesge.ch> Date: Sat, 22 Mar 2025 00:59:23 +0100 Subject: [PATCH] Modifier board.c --- src/board.c | 65 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 61 insertions(+), 4 deletions(-) diff --git a/src/board.c b/src/board.c index f375dc5..4c4863d 100644 --- a/src/board.c +++ b/src/board.c @@ -1,12 +1,69 @@ #include "board.h" -void init(int col, int line){ +struct board create_board(int col, int line){ struct board board; + board.data = malloc(sizeof(struct board) * line); + for(int i = 0; i < line; i++){ + board.data[i] = malloc(sizeof(struct board)*col); + } board.col = col; board.line = line; - for(int i = 0; i < col;i++){ - for(int j = 0; j < line; j++){ - board.data[i][j] = Vide; + return board; +} + +void init_board(struct board *board){ + for(int i = 0; i < board->line;i++){ + for(int j = 0; j < board->col; j++){ + board->data[i][j] = Vide; + } + } +} + +void print_game(struct board *board){ + printf("┌"); + for(int i = 1; i < board->col; i++){ + printf("─┬"); + } + printf("─â”\n"); + + for(int i = 0; i < board->line;i++){ + printf("│"); + for(int j = 0; j < board->col; j++){ + if(board->data[i][j] == Vide){ + printf(" │"); + } + if(board->data[i][j] == Croix){ + printf("X│"); + } + if(board->data[i][j] == Cercle){ + printf("O│"); + } } + if(i != board->line-1){ + printf("\n├"); + for(int i = 1; i < board->col; i++){ + printf("─┼"); + } + printf("─┤\n"); + } + else{ + printf("\n"); + } + } + printf("â””"); + for(int i = 1; i < board->col; i++){ + printf("─┴"); + } + printf("─┘\n"); + for(int i = 1; i <= board->col; i++){ + printf(" %d", i); + } + printf("\n"); +} + +void free_board(struct board *board){ + for(int i = 0; i < board->line;i++){ + free(board->data[i]); } + free(board->data); } \ No newline at end of file -- GitLab