From c5992df61b93daef2e8e2081a70eb983d67d224e Mon Sep 17 00:00:00 2001 From: David GAILLETON Date: Sat, 28 Mar 2026 17:01:43 +0100 Subject: [PATCH] fix(print_board): space before pipe is based on biggest line instead of first line --- alum1 | Bin 21608 -> 21840 bytes src/main.c | 4 ++-- src/print_board.c | 21 +++++++++++++++++---- 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/alum1 b/alum1 index 6d5514a7f37735d65124323025fab6571d95664d..2db180eb4ae9e9df8e95e8a8ab67c5ebfe4a227f 100755 GIT binary patch delta 2672 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 diff --git a/src/main.c b/src/main.c index 7e0def8..55b863b 100644 --- a/src/main.c +++ b/src/main.c @@ -36,8 +36,8 @@ int main(int argc, char *argv[]) { ft_putstr_fd("ERROR", 2); return (1); } - int test[] = {8, 5, 3, 2, 1}; - print_board(test, 5); + int test[] = {8, 5, 3, 2, 1, 11}; + print_board(test, 6); return (0); close(fd); } diff --git a/src/print_board.c b/src/print_board.c index deac53f..7398987 100644 --- a/src/print_board.c +++ b/src/print_board.c @@ -14,16 +14,29 @@ #include #include +static int get_biggest_line(int *game_state, size_t nb_line) { + size_t i; + int biggest = 0; + + i = 0; + while (i < nb_line) { + if (game_state[i] > biggest) + biggest = game_state[i]; + i++; + } + return (biggest); +} + void print_board(int *game_state, size_t nb_line) { - int size_of_first; + int biggest_line; size_t i; int j; i = -1; - size_of_first = game_state[0]; + biggest_line = get_biggest_line(game_state, nb_line); while (++i < nb_line) { j = -1; - while (++j < size_of_first - game_state[i]) + while (++j < biggest_line - game_state[i]) write(1, " ", 1); j = -1; while (++j < game_state[i]) { @@ -32,7 +45,7 @@ void print_board(int *game_state, size_t nb_line) { write(1, " ", 1); } j = -1; - while (++j < size_of_first - game_state[i]) + while (++j < biggest_line - game_state[i]) write(1, " ", 1); write(1, "\n", 1); }