From 11390bb1f54430241634a1ec2657d4a93a27e641 Mon Sep 17 00:00:00 2001 From: fdai7745 Date: Thu, 8 Feb 2024 07:47:32 +0000 Subject: [PATCH 01/33] Daniel --- .../test_duellist_spielesammlung_projekt.c | 18 ++-- .../duellist-spielesammlung-projekt.d | 3 + .../out/c/duellist-spielesammlung-projekt.o | Bin 0 -> 8764 bytes .../c/test_duellist_spielesammlung_projekt.o | Bin 10168 -> 10156 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7114 -> 7104 bytes .../test_duellist_spielesammlung_projekt.out | Bin 76916 -> 93872 bytes .../test_duellist_spielesammlung_projekt.c | 18 ++-- .../test_duellist_spielesammlung_projekt.pass | 78 ++++++++++++++++++ ...t_duellist_spielesammlung_projekt_runner.c | 28 +++---- src/main/duellist-spielesammlung-projekt.c | 18 +--- src/main/duellist-spielesammlung-projekt.h | 16 +--- 11 files changed, 117 insertions(+), 62 deletions(-) create mode 100644 build/test/dependencies/duellist-spielesammlung-projekt.d create mode 100644 build/test/out/c/duellist-spielesammlung-projekt.o create mode 100644 build/test/results/test_duellist_spielesammlung_projekt.pass diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 74c99eb..c7841c4 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -16,7 +16,7 @@ void tearDown(void) {} -void test_coinflip_player_x_starts(void) { +void test_coinflip_x_starts(void) { @@ -44,7 +44,7 @@ void test_coinflip_player_x_starts(void) { -void test_coinflip_player_o_starts(void) { +void test_coinflip_o_starts(void) { @@ -166,7 +166,7 @@ void test_diagonal_win(void) { -void test_valid_move_and_switch_player(void) { +void test_valid_move_and_switch(void) { @@ -272,7 +272,7 @@ void test_valid_input(void) { -void test_invalid_input_type1(void) { +void test_invalid_input_negative_row(void) { @@ -304,7 +304,7 @@ void test_invalid_input_type1(void) { -void test_invalid_input_type2(void) { +void test_invalid_input_overflow_column(void) { @@ -336,7 +336,7 @@ void test_invalid_input_type2(void) { -void test_getNumberOfMoves_returns_correct_number_of_moves(void) { +void test_NumberOfMoves_returns_correct_number_of_moves(void) { @@ -352,7 +352,7 @@ void test_getNumberOfMoves_returns_correct_number_of_moves(void) { - int moves = getNumberOfMoves(&game); + int moves = NumberOfMoves(&game); @@ -420,7 +420,7 @@ void test_BoardFull_returns_true_when_board_is_full(void) { } -void test_getCurrentPlayer_returns_correct_player(void) { +void test_CurrentPlayer_returns_correct_player(void) { @@ -436,7 +436,7 @@ void test_getCurrentPlayer_returns_correct_player(void) { - Player currentPlayer = getCurrentPlayer(&game); + Player currentPlayer = CurrentPlayer(&game); diff --git a/build/test/dependencies/duellist-spielesammlung-projekt.d b/build/test/dependencies/duellist-spielesammlung-projekt.d new file mode 100644 index 0000000..e5d9f35 --- /dev/null +++ b/build/test/dependencies/duellist-spielesammlung-projekt.d @@ -0,0 +1,3 @@ +build/test/out/c/duellist-spielesammlung-projekt.o: \ + src/main/duellist-spielesammlung-projekt.c \ + src/main/duellist-spielesammlung-projekt.h diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o new file mode 100644 index 0000000000000000000000000000000000000000..ca060d17e06c82ffb39012b25447f3a4d8eac70e GIT binary patch literal 8764 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 KApc()`F{a{#Xa2s literal 0 HcmV?d00001 diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 7bf0ec4c005b05cfab59d5b317568befb9176236..83a04df5cb13913482fb58b07c5bc52d98933c20 100644 GIT binary patch delta 2607 zcmZXW4{Q@v9LImJcO7k4+KzQ=cWj{Cx{m+B5y+x}EwIUuYy>+q6R>t$JL_&Oxn6-G zq2iyY#GuX7@F!pZW5NUx8Hq6YBOxZv0Ad0-kT^6^A%mbs4apMq_wLqLj$QKJ{od#M z`@Q$OcfWh>@s>j^_7$WM*!6bSE|Xc=+1u??oB*>N07tVIWU@T_N6@;>2QWY@h-^KK z)6nZw?)EugL41^2|8bhtfK-jt4 zUSEIh?NbVziMP2xmCg zaf7NhD#?fj!dc52de>d%GcADfg83kvL#@J7K9Olf`p#Qz3T^a+T(0s0jy!$zfM;gN zyBX1>YOC)$-tFzlh}sEOKN~ec{ZIxB} z96h|WuWBA`D{@Mm697tF=ufV(P)l}c37eGsI6^lU)d$aT`MgQ~j@6natAJO-ml>wF zi{?%9*>Y2z$@!uakgr%?x-YG$noGMUIVFv|9?iK*%=P#P%}!btyvpT|O!C2pRy`4z zGo8F&kDK@=i{4#p&t=^;NuUJ}uBQ>TZ*M~cjO1dWjk6MXjepwuZxD&-uy(u-UUnB-@^?w*7+NLR3g9I6GPXjvh*cHPty)&3 zy1EQ4gFVBo_qh5YXPy8Cpr5Dt&9&rdC*>Y~Jm}gCl_$^Jf8P?@-vcKCh|8D_C4i&icoi8wdF|w$$k@Am_fuo`n*#c z5_Wv#$tEQA)(6QEB!edM3z9ml-F#FDCc{qUJgGyn80#@l5*GT;qk98;QD7I&2m)dM zi013#2fIV`i)k_$pu^Y?QbCr<6&l3;CVdL~5t@``nviYv0J(j%vM)`)a-?D$sUAma z>7XpvtQyDHj3bJPY@qWhchF0fetNGmOj`qwyG%!Gm_~|=OCLU{!^ZE-iNH?$tqJsR OtP%;`5|ro%LFs>d`qVi9 delta 2721 zcmZWrZEO@p7=Gt=ukH2g?s~m`94#W(YpXz|w1A=n3T;WXv<0s}hz-lO-79CWcbC1r zLIrage+V&%m-$g3NK^s_L{y4U6QKk!K?RKw`4A&DKr}`Igy0XO!FP7==Gb(TnSJMZ z-mjT`XJ!v|j(6JHNgl9gOVZ{gwaGc7w#s~f*|`9RlNY?CEqSlTx~&x87_B5;>&Ga4 zLtBWKY@|U_Lw3_7sj;3a2e>$Pf<$siIh~U`SkWC*)L75@$dDZF=?p8)YH(QTX;xx` zS|my*a-Uv!79$Fi*j>aXvd#`xF*_D~MbSp03d+`CSc5F_Hd0oS)wf<&A^SG1%R9Kx zMF1?_9c}(KQd@_=VIByHNz_U~-H3s(Gig!+Vb?xt&-W%aSO9ENR8ukN?`VXBK8z#& z#5{;LsaK9EAYNirj!g=L%j2r5gtcZxlY^mp5UwHneqky0UldL+ z8%KW*dq;ezS5Z3y%ts7_>tvkXDRh@GvP^f}HV}@e3R1rz<*|Dz88svAo0%CJ{UF>x zja7D6;&Yr;Eqfw9;=OEzPMb}US!>JTR!)7TtyYTCxY_DiGM~7B;<%Ek+L( zf3VLl_xU5r3RVNw(nGY)*)(HKHh{Yjt;tnpVo5f;nKSb1B=(kMh|YC-=(cJ%J?YGU z@+en6Z&Lmtr3}Ryeivy#(da#Ay~m!D_C1kSN2fr(+C!f!T0Skr=_6^{!|3rzpo@#9 z(|>)H3&`HDacMR%c=vZ)f1gSJqe-MO)kmV|xE575+S1WSQ|cu{kzuST@-7DW)a9AY zHugLqZyvzX-l2!s#BH{wL+GoqU8bM7rs)RtKt`P0;50YbWHNYNrvJHo9)hQqvAQ7> ztulX}8X!HnLOS*`uDjNx+b`2si)YT4q9J)iQGv8aaa-=v)7{BUI#MS36jv*;ct``{ zm+6J#YR^@!wbbOeRi*{*TF*2*ZjBrpO!PA{?Q~arUgEURM9-4xc6Z4FBP%H)#WY#P zolHtqOf8_N_aQeeHBbNp^ zJIt}e96Q0WZ@F}rvkwy-EWod2xSq?tn;vcn$5wJ_GiTr8*iJ5;-8_$UJ)8>up&%1(&8EFHb=>n~*JZe$|dF<4B?BtIE^j&8l_Tsq>FE`<{J* z9o+RG>6c9~JS>NT{ZcR-jcbx|q#F#ohH_kW^rml6Fs>xum{u*4ML04S;TW^x=ZU!a?hUo zJO6X;J$GjB#hx=g@1G;RmGepOk{4jOayLny;W3gVZ}NV$N4ZLd$W49{eNXjw(oIMo zZ>9+{%6FihDkpG5WdYt;Ew z_1mlJJNz!{n)pL3K~j7>OSB&*4{G1L=hQy6sy@bL)YbTFXc?blUv4}s6)oAcieM>4 zOBy#+J*TM!{<3#3kH_QuvbT4Su1w07I;}{iambOW`n0U66OyVIN|t0yD`rkJ4q>)d z%In~0_^0tF2=E``yZA@G-TX&ilFNx5yvyH1Zu6J?ulk1-eL__Z^1uBZIC>)sxJSBz zW*G-t=1&LWks$WsCBE?~*#v)(a3yfOr5l-NbTBjWf;5^L905A_8Q&7zS~ffYL8)Mw zz-kmVI2qS1V3$Qr7L>AbQ33X|2nB*tPLn5rT@kS`&QuL!SH-Le({Q-kQg zH*6lRb5UqO)s?|gKC75OZ<2Z3U{hq91BP-!Pz3s$&7;naaD|eoAYCBy{7fj?CUV-= zmQ15WnE-kV1CY|UVHW>PmyJhIabZsUEXnbr*10y^&s zq>NHl9RGK&$evw5&${UTDeQ1c*0J?-cCh(5&B)3;7>0M_uHKi}>xAB^s(Pztcs==wm`4p1Npuo#^9g*XDP~rpApbS@`FAaHZB_V_c3$ e`A|F=UVEh?Y~A?(JJiX=J9G|j&MrQdIPf32evhmG delta 1686 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 diff --git a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c index 74c99eb..c7841c4 100644 --- a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c +++ b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c @@ -16,7 +16,7 @@ void tearDown(void) {} -void test_coinflip_player_x_starts(void) { +void test_coinflip_x_starts(void) { @@ -44,7 +44,7 @@ void test_coinflip_player_x_starts(void) { -void test_coinflip_player_o_starts(void) { +void test_coinflip_o_starts(void) { @@ -166,7 +166,7 @@ void test_diagonal_win(void) { -void test_valid_move_and_switch_player(void) { +void test_valid_move_and_switch(void) { @@ -272,7 +272,7 @@ void test_valid_input(void) { -void test_invalid_input_type1(void) { +void test_invalid_input_negative_row(void) { @@ -304,7 +304,7 @@ void test_invalid_input_type1(void) { -void test_invalid_input_type2(void) { +void test_invalid_input_overflow_column(void) { @@ -336,7 +336,7 @@ void test_invalid_input_type2(void) { -void test_getNumberOfMoves_returns_correct_number_of_moves(void) { +void test_NumberOfMoves_returns_correct_number_of_moves(void) { @@ -352,7 +352,7 @@ void test_getNumberOfMoves_returns_correct_number_of_moves(void) { - int moves = getNumberOfMoves(&game); + int moves = NumberOfMoves(&game); @@ -420,7 +420,7 @@ void test_BoardFull_returns_true_when_board_is_full(void) { } -void test_getCurrentPlayer_returns_correct_player(void) { +void test_CurrentPlayer_returns_correct_player(void) { @@ -436,7 +436,7 @@ void test_getCurrentPlayer_returns_correct_player(void) { - Player currentPlayer = getCurrentPlayer(&game); + Player currentPlayer = CurrentPlayer(&game); diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass new file mode 100644 index 0000000..1ad831c --- /dev/null +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -0,0 +1,78 @@ +--- +:source: + :path: src/test + :file: test_duellist_spielesammlung_projekt.c +:successes: +- :test: test_coinflip_x_starts + :line: 11 + :message: '' + :unity_test_time: 0 +- :test: test_coinflip_o_starts + :line: 23 + :message: '' + :unity_test_time: 0 +- :test: test_vertical_win + :line: 35 + :message: '' + :unity_test_time: 0 +- :test: test_horizontal_win + :line: 49 + :message: '' + :unity_test_time: 0 +- :test: test_diagonal_win + :line: 62 + :message: '' + :unity_test_time: 0 +- :test: test_valid_move_and_switch + :line: 76 + :message: '' + :unity_test_time: 0 +- :test: test_invalid_input + :line: 92 + :message: '' + :unity_test_time: 0 +- :test: test_valid_input + :line: 106 + :message: '' + :unity_test_time: 0 +- :test: test_invalid_input_negative_row + :line: 121 + :message: '' + :unity_test_time: 0 +- :test: test_invalid_input_overflow_column + :line: 135 + :message: '' + :unity_test_time: 0 +- :test: test_NumberOfMoves_returns_correct_number_of_moves + :line: 149 + :message: '' + :unity_test_time: 0 +- :test: test_BoardFull_returns_false_when_board_is_not_full + :line: 163 + :message: '' + :unity_test_time: 0 +- :test: test_BoardFull_returns_true_when_board_is_full + :line: 176 + :message: '' + :unity_test_time: 0 +- :test: test_CurrentPlayer_returns_correct_player + :line: 189 + :message: '' + :unity_test_time: 0 +- :test: test_FieldEmpty_returns_true_for_empty_field + :line: 202 + :message: '' + :unity_test_time: 0 +- :test: test_FieldEmpty_returns_false_for_nonempty_field + :line: 215 + :message: '' + :unity_test_time: 0 +:failures: [] +:ignores: [] +:counts: + :total: 16 + :passed: 16 + :failed: 0 + :ignored: 0 +:stdout: [] +:time: 0.04396939999423921 diff --git a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c index f4e3d01..61464f8 100644 --- a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c +++ b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c @@ -10,20 +10,20 @@ char* GlobalOrderError; /*=======External Functions This Runner Calls=====*/ extern void setUp(void); extern void tearDown(void); -extern void test_coinflip_player_x_starts(void); -extern void test_coinflip_player_o_starts(void); +extern void test_coinflip_x_starts(void); +extern void test_coinflip_o_starts(void); extern void test_vertical_win(void); extern void test_horizontal_win(void); extern void test_diagonal_win(void); -extern void test_valid_move_and_switch_player(void); +extern void test_valid_move_and_switch(void); extern void test_invalid_input(void); extern void test_valid_input(void); -extern void test_invalid_input_type1(void); -extern void test_invalid_input_type2(void); -extern void test_getNumberOfMoves_returns_correct_number_of_moves(void); +extern void test_invalid_input_negative_row(void); +extern void test_invalid_input_overflow_column(void); +extern void test_NumberOfMoves_returns_correct_number_of_moves(void); extern void test_BoardFull_returns_false_when_board_is_not_full(void); extern void test_BoardFull_returns_true_when_board_is_full(void); -extern void test_getCurrentPlayer_returns_correct_player(void); +extern void test_CurrentPlayer_returns_correct_player(void); extern void test_FieldEmpty_returns_true_for_empty_field(void); extern void test_FieldEmpty_returns_false_for_nonempty_field(void); @@ -90,20 +90,20 @@ static void run_test(UnityTestFunction func, const char* name, UNITY_LINE_TYPE l int main(void) { UnityBegin("test_duellist_spielesammlung_projekt.c"); - run_test(test_coinflip_player_x_starts, "test_coinflip_player_x_starts", 11); - run_test(test_coinflip_player_o_starts, "test_coinflip_player_o_starts", 23); + run_test(test_coinflip_x_starts, "test_coinflip_x_starts", 11); + run_test(test_coinflip_o_starts, "test_coinflip_o_starts", 23); run_test(test_vertical_win, "test_vertical_win", 35); run_test(test_horizontal_win, "test_horizontal_win", 49); run_test(test_diagonal_win, "test_diagonal_win", 62); - run_test(test_valid_move_and_switch_player, "test_valid_move_and_switch_player", 76); + run_test(test_valid_move_and_switch, "test_valid_move_and_switch", 76); run_test(test_invalid_input, "test_invalid_input", 92); run_test(test_valid_input, "test_valid_input", 106); - run_test(test_invalid_input_type1, "test_invalid_input_type1", 121); - run_test(test_invalid_input_type2, "test_invalid_input_type2", 135); - run_test(test_getNumberOfMoves_returns_correct_number_of_moves, "test_getNumberOfMoves_returns_correct_number_of_moves", 149); + run_test(test_invalid_input_negative_row, "test_invalid_input_negative_row", 121); + run_test(test_invalid_input_overflow_column, "test_invalid_input_overflow_column", 135); + run_test(test_NumberOfMoves_returns_correct_number_of_moves, "test_NumberOfMoves_returns_correct_number_of_moves", 149); run_test(test_BoardFull_returns_false_when_board_is_not_full, "test_BoardFull_returns_false_when_board_is_not_full", 163); run_test(test_BoardFull_returns_true_when_board_is_full, "test_BoardFull_returns_true_when_board_is_full", 176); - run_test(test_getCurrentPlayer_returns_correct_player, "test_getCurrentPlayer_returns_correct_player", 189); + run_test(test_CurrentPlayer_returns_correct_player, "test_CurrentPlayer_returns_correct_player", 189); run_test(test_FieldEmpty_returns_true_for_empty_field, "test_FieldEmpty_returns_true_for_empty_field", 202); run_test(test_FieldEmpty_returns_false_for_nonempty_field, "test_FieldEmpty_returns_false_for_nonempty_field", 215); diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index dbe397a..cc6f212 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -138,10 +138,9 @@ GameResult checkGameResult(const TicTacToeGame* game) { return draw ? GAME_DRAW : SUCCESS; } - -int berechneMinen(int hoehe, int breite) { - int anzahl_minen; - if (hoehe <= 1 || breite <= 1) { +int calculate_mines(int height, int width) { + int num_mines; + if (height <= 1 || width <= 1) { return 0; } else { @@ -180,17 +179,6 @@ void distribute_mines(char** mines, int height, int width, int num_mines) { } } - // Diagonalen Sieg prüfen - if ((game->board[0][0] == game->board[1][1] && game->board[1][1] == game->board[2][2] && game->board[0][0] != EMPTY) || - (game->board[0][2] == game->board[1][1] && game->board[1][1] == game->board[2][0] && game->board[0][2] != EMPTY)) { - return GAME_WIN; - } - - - - - - int minesweeper() { int height, width, row, column; printf("Enter the height of the game field:\n"); diff --git a/src/main/duellist-spielesammlung-projekt.h b/src/main/duellist-spielesammlung-projekt.h index 2f63a3e..53b7127 100644 --- a/src/main/duellist-spielesammlung-projekt.h +++ b/src/main/duellist-spielesammlung-projekt.h @@ -38,18 +38,4 @@ int FieldEmpty(const TicTacToeGame* game, int row, int col); int decideGameType(); Player playRockPaperScissors(); -#endif // DUEELIST_SPIELESAMMLUNG_PROJEKT_ - - - - - - - - - - - - - - +#endif // DUEELIST_SPIELESAMMLUNG_PROJEKT_H \ No newline at end of file From 643e13dee3367beacf4d6b822dc8fe10136a24f6 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 09:52:08 +0100 Subject: [PATCH 02/33] showMinefild --- src/main/duellist-spielesammlung-projekt.c | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index cc6f212..9ff0743 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -179,6 +179,41 @@ void distribute_mines(char** mines, int height, int width, int num_mines) { } } +void show_minefield(char** minefield, int height, int width) { + int i, j; + + printf("\n\n"); + printf(" "); + for (i = 0; i < height; i++) { + printf("%3d", i + 1); + } + printf("\n"); + + printf(" "); + for (i = 0; i < width; i++) { + printf("---"); + } + printf("\n"); + + for (i = 0; i < height; i++) { + printf("%3d|", i + 1); + for (j = 0; j < width; j++) { + printf("%3c", minefield[i][j]); + } + printf(" |%-3d\n", i + 1); + } + printf(" "); + for (i = 0; i < width; i++) { + printf("---"); + } + printf("\n"); + printf(" "); + for (i = 0; i < width; i++) { + printf("%3d", i + 1); + } + printf("\n\n"); +} + int minesweeper() { int height, width, row, column; printf("Enter the height of the game field:\n"); From 8e5f75579e63cdc142a660c59cade68fde14db5d Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 10:25:44 +0100 Subject: [PATCH 03/33] add field_check --- src/main/duellist-spielesammlung-projekt.c | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index 9ff0743..9aa1d88 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -214,6 +214,85 @@ void show_minefield(char** minefield, int height, int width) { printf("\n\n"); } +int field_check(char** minefield, char** mines, int height, int width, int row, int column) { + char counter = 0; + + if ((row < 0) || (row >= height) || (column < 0) || (column >= width)) { + printf("Exception: Outside the minefield!\n"); + return -1; + } + // If there is a mine at this position + if (mines[row][column] == 1) { + return 0; + } + + // If there is no mine at the position, count how many mines are around it + if ((row + 1 < height) && (mines[row + 1][column] == 1)) { + counter++; + } + if ((row - 1 >= 0) && (mines[row - 1][column] == 1)) { + counter++; + } + if ((column + 1 < width) && (mines[row][column + 1] == 1)) { + counter++; + } + if ((column - 1 >= 0) && (mines[row][column - 1] == 1)) { + counter++; + } + if ((row + 1 < height) && (column - 1 >= 0) && (mines[row + 1][column - 1] == 1)) { + counter++; + } + if ((row - 1 >= 0) && (column + 1 < width) && (mines[row - 1][column + 1] == 1)) { + counter++; + } + if ((row + 1 < height) && (column + 1 < width) && (mines[row + 1][column + 1] == 1)) { + counter++; + } + if ((row - 1 >= 0) && (column - 1 >= 0) && (mines[row - 1][column - 1] == 1)) { + counter++; + } + + minefield[row][column] = 48 + counter; + + if (counter > 0) { + return 1; + } + + if ((row + 1 < height) && (minefield[row + 1][column] == unknown_character) && (mines[row + 1][column] == 0)) { + field_check(minefield, mines, height, width, row + 1, column); + } + + if ((row - 1 >= 0) && (minefield[row - 1][column] == unknown_character) && (mines[row - 1][column] == 0)) { + field_check(minefield, mines, height, width, row - 1, column); + } + + if ((column + 1 < width) && (minefield[row][column + 1] == unknown_character) && (mines[row][column + 1] == 0)) { + field_check(minefield, mines, height, width, row, column + 1); + } + + if ((column - 1 >= 0) && (minefield[row][column - 1] == unknown_character) && (mines[row][column - 1] == 0)) { + field_check(minefield, mines, height, width, row, column - 1); + } + + if ((row + 1 < height) && (column - 1 >= 0) && (minefield[row + 1][column - 1] == unknown_character) && (mines[row + 1][column - 1] == 0)) { + field_check(minefield, mines, height, width, row + 1, column - 1); + } + + if ((row - 1 >= 0) && (column + 1 < width) && (minefield[row - 1][column + 1] == unknown_character) && (mines[row - 1][column + 1] == 0)) { + field_check(minefield, mines, height, width, row - 1, column + 1); + } + + if ((row + 1 < height) && (column + 1 < width) && (minefield[row + 1][column + 1] == unknown_character) && (mines[row + 1][column + 1] == 0)) { + field_check(minefield, mines, height, width, row + 1, column + 1); + } + + if ((row - 1 >= 0) && (column - 1 >= 0) && (minefield[row - 1][column - 1] == unknown_character) && (mines[row - 1][column - 1] == 0)) { + field_check(minefield, mines, height, width, row - 1, column - 1); + } + + return 1; +} + int minesweeper() { int height, width, row, column; printf("Enter the height of the game field:\n"); From 07f04b916782ef759431fe6a9df1faaebb4e3547 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:18:29 +0100 Subject: [PATCH 04/33] startgame --- src/main/duellist-spielesammlung-projekt.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index 9aa1d88..a3f70a9 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -310,6 +310,17 @@ int minesweeper() { char** minefield = create_minefield(height, width, unknown_character); char** mines = create_minefield(height, width, 0); distribute_mines(mines, height, width, num_mines); + while (1) { + + printf("Enter 'row column' to uncover (to quit enter '0 0'):\n"); + if (scanf("%d %d", &row, &column) != 2) { + printf("Incorrect input!\n"); + return 1; + } + + row--; + column--; + return 1; } From 00eea748afac7428d9a639fe4df91c0c89cb9945 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:25:01 +0100 Subject: [PATCH 05/33] add end_check --- .../out/c/duellist-spielesammlung-projekt.o | Bin 8764 -> 12700 bytes .../test_duellist_spielesammlung_projekt.out | Bin 93872 -> 97038 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 26 ++++++++++-------- 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index ca060d17e06c82ffb39012b25447f3a4d8eac70e..5896d7c0f54b4a3262a16711d5b6cbb8edef5f8d 100644 GIT binary patch literal 12700 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 delta 2866 zcmY*bdu&r>6hB|vmBQGgYrFQYrHs880($@g87kYdjSxVHV1{N9%35f#d!*|e549*U zaRO%LCJ1B_VlvSLMN$LAD8UCAA{h9~07eNC0`dX56Wt)Cc=g1?Gojl zgFlT_*j!sbUlHb*fyBO|^!+OPQa9170X-;!lQI^f7|fx7-X?-n3zkiMqEVa7zWX}ek=^;60r~j zq>sc|WrxWfj`bxIu?_u6eXY-(8beW!88f0{sMu&?MCsXzjV4UXQEb#Qt;wz!i4V=X zu0*Iiye=AvZHgwDjVg8^7EVT)43oDr5eX$D>$>ziJ}q?w6;#drN{duY)3SL6V##O> zv)!L#OsYdo@qlV~z3&v}(11yAgO2RzpxF^=_u*-SN3!oLHmW@YSue@WBo2XeV4cFS zOY}jlwC+!CX3t~In3hc~_PffLMA8+lG_?coOEDx!#3i(($rVn7uv@RGxVY~d9O|nG zSPi%Ardv6BN&Cl2vQNz0p1jC zhkPRf#PDTqWrNv@$2d1K4vpD7I65i|mV-)~dqRnDTYns6y9}8DrRNN#nG>>;YB!a% zS~y$bl)bK1f=O+m1yh$-fNb^!#rDE1(ewPlRR>sQS$1iy~l)U;Uer-u5-bA$#^CiSasM*g~3g+xh%i&5y`ugKI ztxq>%SuN=}7WhXXubvl}+V~D@RhnAb*XZCGv(xEjQ`&hDGbM@XS1U3K)33(^Rnz?8 zNM|e@SrY1stl8QdA>ow~b$H70h+)6}R9%UFF;FN1`Y!=Zc=W#lmr}V)T~1MCZ}jbJ z)`Sb!!aTC(H{>n?Z}AZo!E`7SW&by%&s`%HYsx!adrZWW!&x#A@7Q=v@3=g@Ay`=N z%M~(Rme&--mW~V3vOT`1di3j;gI>(yPOv8b3JziRcg&KhoVvrJ?<{Z6Trc-oQu4N= zrhLa+mgc-1t5=+zY{O~CzaFZ_z7!^0dsMJJmYGkyY(GEt38J$sR zEnbP6Oxp0mNNG1!Flu2GX0)5pQAU>--IFNepS4tYYm$*INeIdxSh5Ov83gp>vp0#+ zbdzUpOtSc4-{F*>l5-4u{LpX4$R)6fj2^1-h@JXCP5IotrU&aKJr-4Dd@j);GX~PK z0*V%VY*Ld9svMN-bCZ&vOI9I2Itz5IHmZ-*I$i5}6S3~(MpL$wEOa_^vbIC$i|RxF E0a8-9{{R30 diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 003d98bb0a5ae79b61e2be147fa74eec1b6ae8c4..ee9da08b7c947b6508d083435b6e0174e3758670 100644 GIT binary patch delta 13175 zcma)C3tUuH{y*o;FphvcB7=r_MPSwa#h>1TxWkU`XgvT#yK2-(y2Tq@hRs_pXw?w88Z_rYDsx6x4} zYtVAJEX3S7x~90Owuq2?4+vUud*ZI;-89teLI9e3aR=hA=LR;L?&J$t9Noh=;d3uP zfY0anA6RJGoA-gzN(m{(^LgAZmxcIbjY&zCk*^1f2Lg7-!$^6QF2rlsP_%u3`Qtg1 z=j!6<2wtfR_4)#RVu1kvNIc)E+rvz2c&dIb`~7O(tREk?V>KZSH)!35r*mTTa86F^ zV~lw8{$e%%LT_f%R`Vflxn2}BNFX4+&&=jUZsF{+GH!DVWyi|+({2$gaTkBXEg?K# znEOuOOQsOAFSFi4n)ETfy4ld0mHoJ3*tCu^;L9zONfX>PXPbriSuK_?ux4Prhw;%I zU=db)diUkQ@}<7skg1S7U&dD(hPkf=p(#A3m#*ed7_!*JGJf9hz*JA5h@r95d-E$w zLZlTYPV|0UDhqyf2>wO7egcNNf*YIO6W~Y{JYLFo4KlMGrTomGP*z>azZq1;qDuKf z4@XPtYm7s}dfH4b#4HodUg`_4)pF*uH;TRUw3GFaP0{!>sSE11|35gexrx6DKO6+N_N{>f%*5A8xJ zRm&sh@#SHmvF?Jfv6npP3wuez-i^70T)(GRb}&i+f1Asn4YRS8bGa!zJ|q+3W~-+N z?wub82B4K8NU?KyQFsvZoXZ~yAICnM!(R@6h%KGNM@2jxa=bt;iBJi@Cac5=l@|*5 zmk|kZzmTP}!Sg>jrNw~d82TT#klwd{;QJ!{cy{Da(-@iWBQG~)Fb}(^`4;fH$OQIv zKHnD^&Q9m^wG}Nrs9)%hVb$`8xKV8TY#wd8pZU+`Pnl9!_pFXC(_+dRX7W+d z*=*8GULBpoZshU9(fRB^UWak`1j@>0aBIv&|H~MFiNuYNI_r6>&v`7hb7sCXCfm0I zg2v9;Kox!7%rD1G^Ia^Xb>{QdtAd+g<~gyYj7;ahjm;VI#x%Js6Re)zo5T1!(NR2d z#0XY8jpvSdmAy8V|9iwNRy>tYkK4$;p29zfTg5g^;bY^YS#T0x5I>e(O61$($0UB7 zC_H;V(dm7-v&nk(%H;D_qj2^#a5+>Fl#INX$iI$%P9K}Amf@PU}@8&ngv43Oc zOulK{yR3Wy&q^_~p%Zv*N-;Z>!9P!l)BgrDiksr%nJt5l8E^KAMIZCbBqmKr2Co<& z$AUBX&he?SNAGe<4xz2CZuf3^9*N_m_ldjs_v3TIUw~BJ;6DFkU;s4d2G?>IFG!U_ zcc&|+p1^GT@q$x-b2?{f^I1|lU!0c2Zl>|AX(PiM(y&cqI&(aaiZkYe6Z4zCZurjF z`(hgZFl`vylE(YeVp*Yh1oEWxO7ACA6_pq9>^+;>@$2-bb<8%7PsvPT`Q!NgnH9qe z#wwH|Je#flVle0QZb0YB>l;0r=J)khkL8Am1-5t;qf^8g4jJ0-ind9#tyd8Xb_#5o z4V_dh5r|Ic1fn&U!@n6;L`lfa}|b4Wbyqj7BK_4_mK;yw!SLPYh=|bDSGeL!1o(5M%hZvTt4^?*RT`?Ks3(b_Z%I#f>uSOF^At0L z1yLgZjbm<`tv&YJg>DZc-D%{GaUlIJ+ilWUOMRCklm8NiYc8&-IO?XZ5P2%hzuxe! zd8<$T#_MF0yS&wWYn!2$r;b`ZtUXQ5T(wE&`nrN!S1NJ3hyy<*n^6fdArfY449ZT~b`e#uqt z$@#>XL9>PU-|_tT#L%(@_)>s3sOI^Xnqg{Qj8UbR3(g5gav_j;cu!tfSRJb!^5P9X$K5G`(wsg*5zU zpmtc}7qy-P{?Ew$E41z^QX)&>{1n~^8cqf;J(2vy71ng3C7U+;H+F64_^oxFj+u9L z44>vt6Q=G0v-9S_z`ou1Vva8xgHE&@7O@=7f7(J$y9rdhizemsqUj+y0&KkI-S`-w z=7@Qs_l0-k!=g825qig#3Frgw&Bp;96YS<}BYrsXZp?<2h7+C-|0kaxpPn1i4!@{L zIB2Bz%1;9WGFeC?W+Vj*#hO1goHQ-Hx9~*MwU#%&A$4WHFGiTNMm zk2VIf#6$c*W3=0%Ljwch{FU`lJn zwq&q#hxi*?a+&ER&K{Y>>R;knk7Th6FYzspL^99c@&k{oWIKM#y|&I`Iqm%3tz+Hl z+Xn`GWlKJ)rP_9Wd}{(LZReM_rn0Vf9^I6{{9oa-nkrdw2S47lfF-`p1GnX}oY(oi z+rWICZ`(GSz5f<}1COo8`Q>d(*!JT*w|N0ed6(~L&T{K~cVOT-zOOm#@$F`2I>EuhQCCfLDqEF=uU(%oy}(zgQ;O_wFCZMpBST)WGL)>J)UmkwP~RbE$7Y47^JA()d@ z#d6;lMb}C{gJsrM>U&ajbJcD!@hhn;wiT`@Em^UK(0EyCZ-Iq~y^`+kMI8RJe!Qwc z{AGQ6SMM)JspzpbqrV)bz3UlJM(9X2klKLN&Q3K6l$V?0*hc7iQGl4RjqvJ$)o$zIi-XRurvwdWITFOCZMhpecotE?@lA@p-Mxg=G@ z7P_vq>VZPXCP3)nInyjeta`fpQ%5L=?V-rd4~vLdn_h9Q_KYFO_=qAY4?)6eyOe|$ zm#wR-03nZBCGWv{ymPR}V5MS7dD8?RuM%1hr{Ybv&W0QHg zBbXLVFltX9CMWu+BCCbcKR!0uz71hZ;}P$&a=9-eeJ8*C4BhP_x7 z3Ng=a`F@bIgk`v!sesiHHh^OUh?>k&z;bjWv+HVVN-FuzKL^`V9HytJrb%E$(V7ww z2%)JK6z^<~g*-0D@u-8GDw-HHrC_OwZM9%(&lpluvaYTiGkBt~!rIC)7=J)3u&lDI zwydbU?4gn=^NK3qCRPw;!;M%-boaj;Zemq85%VFOBr-vIacU+J_W~3@gp2gz6|fZD zDE{!LBWM&q_-PbA-~TjWtV!M)C$EAl55e1!Z6V^6pu2;M93Zm60Rh)~k}!zh{4kl% z|196#eqsc8cf9;rtO36`@=q@gbBmjgzmxG<-61~n*Oe3#`qsao913uV0QsbD4`!Ip zXLOHZ{qy+x?s%Vb^YA_-yWBU3kbpD1y?adLet_d-P=^T=&?TDNg(XqhGyJFSOtxSi zpYY`SHc!K46>ef z`4A$`w}0c7h6K@({E41&cE*TQ$MCUVy}~B@c6|NS(lB4~5*$1NN27=LU^m@`4Hg`I zx%AbW|K~>Cq&^)Dn(a2tj|JneeD?hpH!ftFpD!J1umnq4Arvxy zH=^@Wh(a&GsVBODQiy?ujSf;t9*Xf`bcJ!X8=~r{-B1ZXafgfu11b!wXt)Ozeuc{j zrHRQtno1wJ(EvArMoBO0X^_sOU_nQE^z<`!*hn|Kvlji4EkkKNvy~k?MwnjLCO(V{ z@ktHS4UKO)!QVNsHsfLkl_mNrI6j%7QG6QbDu|)!Hp;j4a%|EnTb``6QW*FpK6EP$ z4afEwk3A>DhYZHA_sXq31{Uq7G+jZv_>j;CXSmAQBl?F7EY_~0_BC?wV{Lx>jOSME zlYPiWjF;e(B?rieY=%V-70&J09atK@OTwK{*0JGG9`46d6oa1%fv})su@J=i71<@S ziXyp03t)_0e0kgIJM9t`bc`2GS9(B`l6_jQIj+fLx&#;kEVZN zH0KC9FBxd53`$+2XpHywSaUZA2w8=-8yLUdHTbxx38PNM-*_i!2`)hE%>)I%yT0jM@pz4tX7 z)UW~SV|ZjqpC!>K+OH5iN7J!5*Cfkm8ch@1h6PBi*;G%rE79*AP2Hu$SQ<*FNvB5B zsLT!+u)q{vo(MK*T<-xfL<$VDLH*mWY`3nW`IjiHe?Jzn1rW!tj>jf4PMkmHIZ z0okuXrT{soL5hI%YmiMq3^-q%wUmH_YLNDkfZ{aJX&`A1#9m&6`^^}-nx2&k%yc+w z%#`jo(`c43NP5alb3Fo3b5D^mJtn;qLqpuopyMU^rqeK`fbDVt=>=(KGL16yz(>AS z6d+V;&BB~PXJ;~vbh`{epOh@C3A}Hr)SXPT3W zh&^QRE638639;b!Ii#>d(t*^^uv@V6_fD5?j-}T!t%C263jPYg&$IIdvKfd8GgdnX zTW3h-6q*(MB&1~atE2Yjnic0tXHsF|jP&lqMuie5zWpazD%-Y>0EYr|7v)=HIuwUR9hQYKzdM*vs{yp$&CvIfuc%{=w!{-pR zs)D?9YK&+txHU@!5n+d7^(0(^M$d9P3GT>0fpitw5qt653#9gR8trkxQ5-+08}vgk z*7rFgG%|F;??Ms#96SSfwgB+jSJ{mUHzR;lm$@QoKsq(ZG$1~!T{+8ymIkQ+ve$vw z!!@rIS|ZD@^jK3zXa*f+q)}2*7L7{YBvb;FFU-mo&;le6bmtcE6p+qx#kEd)Cz*z^ z&T=t|(bAh)bSm8|xnecnR*6In(0)f1^_7!78b9%4AdB<~D5NIIHL zbNtSLw+O)*RELE8Me@#}0XCxg6HyRy1GIPz;^BoN)+?JCBZbvnF z;(u0&yc9c`Ksq(t=DKB zlR|RoaNGN!ifaHTty1A0fnZy4B0mBFAj=hwujmq!3uhD%OmY`wip(Jduj#7g#X#cK zo?@pW6_7~-HT+ENiJu|+rSC=TuS4*>qlmCVJ^&(qhjdo#&p=8Y#SznW9eDMcQhW{0 zL5-asfplpQBeu!c>h05B_zIf}$mB3BAiTPg+Im-#705}Ap#mVwHCiRo7gLbU1_;{S zTw{M6$RUlnXMu>zIW}EDc4!=Q19@MA{6p1(adjm6fjB3Kuoz_HjZ!gb1I&)0BH34adbg@x-%YO&gSG@NrkbJr_9GY#W%4FaRXfhZBf zHz08-Whh+vKuuX~2|21U7X(g^CdF7F_6-2$aAg9yq2c5K5i7)5&O#d?LM$#duLRPo zakgG?G~@Cp5Q`&YVPOvtlSbL?GMWM;Mia#XAo;K(Dk*Nfe*w9Q zrt{EQ2P9Zy`IkX}S{+bfZB=>I10^-)HPZ1J)ExU5q+PPqZuA)-do_u?Ao=BCRvdvK z{$bY`PXJk7?}~f`#9tHj1t6Y?)fx4_fQZXE%XN4uNCe{K1Or)L?`kp736(KW`(t7_yGxL+Zt)aOd46SOttS^ z=~Y1b9kWIF-U#G*?D@`uKL(`UQC-0iZ#crK(@qBv@uwi?^m$u)WhP!csvW@y#fzX_ z)wsI?1ix~))P)9Oo&XW&jz|o@hyc-^LJ2@(RJp>j01^N1+8MxXAX9TR&h7!!1Cleh zG9Z^U$OAyyHQ7EaHO<1@XojHNVXkmp*{aH-aRKRw0mhP3bCR zEmzL&pz+w*paz~gDldR^$&p84(S21lwV0rq5MP(RoQ=|*0kuanr!E57>rjSG@=qWp zJe^y}0FZnQ#~(ALyxw)mBm&9T6lxlfVhv|;44__(p%NhV8f2TaKOd3)3IgCR)j0-4 zT+Vu(1!C6J>kA<1;5du(4Ulu1QuF~41m^_338V|Vo$x0#@sr|`5c%msG6B)@ejemBgZnR05}6qx=#O`*KtwJq4t?-gP7{ z0x@ew;yWNyHFi8~p@1}`;XsNtq)Z?i97thxO<85_O46zcaSk{HFFwwNTmf zHIRDEq}vjT?*YM%>;*{zNn76E0okQ_VfzS3BBrI&Suc=2jkD`OM1`EQmxbNB7KetB zS>!vocN#K*6tBrF0Z5+4^i&|w07b5&^K>BJP4LWjQF1^cr#4Uf{D|Gqe UBPqmRK$X8k9=UiA{n+RK0b)D$7XSbN delta 9672 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 SN$mcEkuLV`&RkB Date: Thu, 8 Feb 2024 11:30:13 +0100 Subject: [PATCH 06/33] quit --- .../out/c/duellist-spielesammlung-projekt.o | Bin 12700 -> 12916 bytes .../test_duellist_spielesammlung_projekt.out | Bin 97038 -> 97038 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 13 +++++++++++++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index 5896d7c0f54b4a3262a16711d5b6cbb8edef5f8d..ccc3f25ecb04a25f6ad07906d3ce22a42a9e2f90 100644 GIT binary patch delta 2432 zcmY*bZERCj7=F)PTP|#aefDF$y({jcER1d%L^46Pg>EuIQAikx36$QlmUQhbw=N4} ze-KO-#8?i~iBmCVDnAspGKnM@A!z)7=r4pUhTspu5fStUDiPn)bNj-YG<)9Xec$Ii z@44rmZX)uRF?TI11@XC+o9nH-wgBLJ2A~EC9CYO#9I*EzaXj~S!@RM102S2$2U>FH zbo+IrCv!Ifj)V08&8=K#`n(Anz^52?wDKNypR&G@?_kZ!bB+7}YjzxN1X$ggKgk>m z*zf#I#akP{wl$Wa$`!HL{?PR3>PB^c=o0?1VWz8?*>g)VtC8p}62}q1OwGQ~r9D^J zXz0?u&~yPz&wTjJ>3pKHjI9eL&1l*mNT-JVkyIixm<;&Mls}VWiFhJq6$~hhn22zM^YIv9I%V_f^-TzJ7cNgErao7bbCCSFo5yf zuF^-R$-`99Lt)h^xsFY)YDKCWNBT@=5^kKx!ZGmhC)~bl(t!gNMwpx>HaSboid3g2 z2C||uA^mPqIvq|LTVm1pK+GgI<}R?qal?!eX+Uix9SxgNF&Lk5yRyzX=%FyexKsl< zf)&|Z!*MefPXZg48}oEs;R(DZ4R7@x$1~i4#;)Ql!qXwk6KFRv(}Nkoz9HF|_Aiq6 z3lewZO(a!(j0VO&KI-weZznVRXPL1gTU}ubUXnQzn=W|#+3TVSC4eOa#AD$$(qVks zyJcO%drASghy|xGE!-q!VhFU`B>?L&BiQF98`JFQaj78DV^)&FqTTijR{MIyX$TDt znIpiqVKxi9P`(oj*hHsVw6e{zBF~+uLt{2^?qnB6D)_on;k40{Ng%mNl(eAIQw60% zq_oLW(%LW?!ldxpF9l6)xq_oVAXqfJS+YYI`gpllU$4$B`gyFlHG}v{?*z8CC~z5% zd$*;!&g$1@kZiL=AD3jJAiB$|*L09*uO*7_=LcR-??Fl|6A&MSoPL>9u%@>n)t!#+ z%p~x9MYaU=OZ!Jr-2A35$lG*p z7GH&u`5mPXm#(Q++yE{N)w`j4>8#KbWUD+fAMjMNDo3aLm2MBiUw}F+yhp}c%0yaZ zGzsx}-P^pTTDGgN%6^^ysJqbPRXtcPeshYS@qAK- zzfWk2&>vKHhq!XQp_&Tzy@Xl_y?{t6j}i9{p;L&mviS!p{Eg5ZLQC+9kuoa~$&Nlk z{e*T?-HXH>A?`Gxp9sy#;*}t!ort9Llf-Q$E=k-TLPrUmq`GP1ZV>X}YbV!eMP%8x zxD5{2OyoyY_yuuiiMve5iT?yi!DWQPgm&daiw6|DIMZGH<0S*EpNE6BJQ$qM#`wx$ Q1G|oKFPq383I3`44?P9BA^-pY delta 2162 zcmY*aZA@EL7(VCrgF@LTALaJ8y=`MhyNSYBkSw5rWMfW{Z1O{yCL7So?JN{au^OG# z7)%y3@N$+p7bc?4WbV&mb)uO%zhYd>e)wa?#UI9xL|y!W^Usv1@44sPSLu)Td7t-v zpYy!uo^$(0YH_S`fO-l4#LUW2?aMWUd`St(CM=G0nYWC)sySgU$E)V62zj)QkoPv5 zmm;n;pexMPq}vfCWU!e>y1j-^JMiO}L$#K&QF<0d?2V zW%ikG$+H3yAQ~DgMt$&j)l|QW?a8!gKMHe4ts(N!x-B>O=Gcif%cKSCo zuwnHs`ZIe??GF1hgl@4&#Vq&_{ufMyE={`#QTc%Mo3BApF^S4Yvm>YKw<0d9 zm>w0XAt$2hKt5N*$QQ6p$aI4?mYbO@r1OMcaaqzi5}Y=2#r+eR$@GJnbT&mOI}z~S zc^N&Nvpra=o)hah#i}y$XfV<{B9ql%B8d$WWWNRUlHrDdtPxJF6Fap|Ohz6x%maXetI{`+ng~AVFxBLpT;%Dn9~G`;e&1 zhCfyaxdH{}Ahg&Y4xFm`;AqWD}f7@Vhq@>^X`}_sS-{6%=>!6~V@R!bU;g4&*jY z!d4C2j`>cV2}SlOmG;X0_Rtf#N7B=T4%q$Q!$IzqqIb)F{VI^HQgl#|SqLLc3r8B- zQFNCSg`3wO)^^QdqJu-&VliijP>^%V$fM=c(=%B(iMRE@_9|wUxSW>&HL^3|XwNm& zYLZ&|N8sRg=`<-#=@)@$<|K^2S&#;VQP$no$YQ#WMp>I4h3~!kjWoud&@~!h$Miqh zLZqdpoj5$5-Y(bfdL_UYz7PpL1n1hZ5lF8f0}%2W8EUdchQSuvt%-b6tEF}Bp1`qQ zjn)$qg2MmFguRrfc}5qI@8*R_L+k}nA8jGF((Zaxf_F48Vsp{ph9!7W+n*!lx1+O8 z_fJG|(&2LdrqfCde|wTUHhN~2-VH8?T6QFd6t=MC*3u3*r%jOak|9K+h@Jt&@3osO zAh(R@ETRt)@w+KHs^Bdrlwp@7N+4<%s00ho0u(JrG5rdnvxt7hy6ebQz#F5+G_JV#f$U<3TgIuEt+vGJJoC54=^9`^8*JT1&GOT&*OY$&KZ$Cd diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index ee9da08b7c947b6508d083435b6e0174e3758670..eee50c89a4fb36eae79fad40a144f431f8656f8d 100644 GIT binary patch delta 6256 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 delta 6167 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 Date: Thu, 8 Feb 2024 11:31:32 +0100 Subject: [PATCH 07/33] quit2 --- .../out/c/duellist-spielesammlung-projekt.o | Bin 12916 -> 12952 bytes .../test_duellist_spielesammlung_projekt.out | Bin 97038 -> 97038 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 5 ++++- 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index ccc3f25ecb04a25f6ad07906d3ce22a42a9e2f90..b5320eb3d383c57914284f84f085f1a733df72fe 100644 GIT binary patch delta 259 zcmey8G9#7Chmo5B1Y~q4a!GNr2rw|5VPs&?nW$ULcwyo~byf{w28L}D&nh$So%m6m zb&Wg&gV$tPMtROWK?H8q{6_Ev3V~eJ3kW({}QIx^Cs*7+RJeA@PrAQcL;JbF);~j zJ}T_Z%viTsP<%QEFB8yZFtBLzR{0(lk;x1|3)q_2n9G`&x%HGmyvWVoDl3`9>Oe+0 n@^Q2>Iq|YGS1}&tVF5aKGlzN&JJ8(8ZF;{Lmu+s;|I7pcx229RmRA;Q2JdshIb%6>4gUjZw|9BJ7C70*XvFm-h4rjn~CWS|K_{G-pq^{n>EF!bMS&(00T2N zpOx=n;bN|wz`(@9$jqa+Iag&RlSl^8feem(9IZ@FysXSAj7ND`ST^gZ*RTW4n!HNy N7vr4GOZ7i90RR#LK@R`` diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index eee50c89a4fb36eae79fad40a144f431f8656f8d..30b253c8f1abc16b2d34cd75cc786ab88b8e568d 100644 GIT binary patch delta 4123 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 Y0{5_n)zssDW?4 Date: Thu, 8 Feb 2024 11:34:41 +0100 Subject: [PATCH 08/33] game_end --- .../out/c/duellist-spielesammlung-projekt.o | Bin 12952 -> 13524 bytes .../test_duellist_spielesammlung_projekt.out | Bin 97038 -> 98062 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 29 ++++++++++++++++++ 4 files changed, 30 insertions(+), 1 deletion(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index b5320eb3d383c57914284f84f085f1a733df72fe..8bbf2dc84b4eb0eb9e6cd101e8de5794555378c6 100644 GIT binary patch delta 1176 zcmaKreMl2w9LJyMcC9gAuUSck-t3$&F{frhF9g<>NCuUzv=?Hz%QW3gH_adhE=xIz z)ga$1L-7A#G@Qq})D!5=Lhf+PJ zVkk(?h~$X&Rtsz|D@2{-U1|m1LCoBGoJDqW+4v!Gan`_^8CEEVL89tlPt}R$tKnO6 z%mt&k*D)tK!kP%H&QHaks2V?&l#6*P<%D{4>%@hXQ0*S?OjjG)1r{=E;+gZmAX9R} z{zwcA$H0gN23X-7CEuvz@vyXSZfW*oLRxR7kP2r=1lk}u7Sv6Wu)vRm%D8K#5YBOtmiZ< zYgw!hu=%rp6y=(BYlBnvqsJ$Wh=&X1Y;q&39Of!<;GnmIZ}zwO_>&@hd>x|b;fr~f z$Ia)s%|?WFdz<{tp8p~UGPVKE$5>5vxY~HX=ajeA=l8gLVpAvY;+q>hB1D$AiY}j- zuktpvi|$0e&fD55*7=$`&4}chMwn7ges9{VV}=>IVC_vqlKTF}uNU%c)(IB36RS{A zHV`6+VX?kTKc=mB^nQcw$Uk|EDM>Q~4Ihgc0oKtHU9F)@mr$dF^TW1UMlXAXJ|UH}?zr)EC|2SC|0@Co%sLB)odq25bS zHjT?jjW^*z#hTcuS3$iI>OBLssz}?cP?P24NBO_l73xE(AVY=q_yaj$T}=vX=kaTD N-*yJK$XwB7<}VK$Jca-O delta 606 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 AsQ>@~ delta 5338 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 diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 4f971f9..bdcfc4b 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -75,4 +75,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.043742199999996956 +:time: 0.04494909999993979 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index b426da5..2f95108 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -340,7 +340,36 @@ int minesweeper() { if ((row == -1) && (column == -1)) { break; } + // Check field boundaries + if (row >= height || row < 0) { + printf("Row must be between 1 and %d!\n", height); + continue; + } + if (column >= width || column < 0) { + printf("Column must be between 1 and %d!\n", width); + continue; + } + + // Did you land on a mine? + if (field_check(minefield, mines, height, width, row, column) == 0) { + // Show the mines + show_minefield(mines, height, width); + printf("Row: %d Column: %d was unfortunately a mine!\n", row + 1, column + 1); + break; + } + // Are you done? + else if (end_check(minefield, mines, height, width)) { + // Show the mines + show_minefield(mines, height, width); + printf("Great! Solved correctly!\n"); + break; + } + // Show current field to continue playing + else { + show_minefield(mines, height, width); + } } + return 1; } From c4a6c0a8779d0cf27b4cbef33be2c2a6b7aaa56d Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:36:38 +0100 Subject: [PATCH 09/33] free_minfield --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13524 -> 13872 bytes .../test_duellist_spielesammlung_projekt.out | Bin 98062 -> 98608 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 11 ++++++++++- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index 8bbf2dc84b4eb0eb9e6cd101e8de5794555378c6..8177a072c6a453d32e18af9d1d5c0b104f18549b 100644 GIT binary patch delta 3812 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 delta 9480 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 Uazsn|KQ`k>tbS7q{WSRh0hdh5bpQYW diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index bdcfc4b..876525d 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -75,4 +75,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04494909999993979 +:time: 0.043835999999828346 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index 2f95108..d3f4e78 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -308,6 +308,16 @@ int end_check(char** minefield, char** mines, int height, int width) { return 1; } +void free_minefield(char** minefield, int height) { + int i; + // Free each vector + for (i = 0; i < height; i++) { + free(minefield[i]); + } + free(minefield); + minefield = NULL; +} + int minesweeper() { int height, width, row, column; printf("Enter the height of the game field:\n"); @@ -369,7 +379,6 @@ int minesweeper() { show_minefield(mines, height, width); } } - return 1; } From a14138e3c13ac05a9579132df3c2aa4ef58e5669 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:38:25 +0100 Subject: [PATCH 10/33] get memory --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13872 -> 13888 bytes .../test_duellist_spielesammlung_projekt.out | Bin 98608 -> 98608 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 1 + 4 files changed, 2 insertions(+), 1 deletion(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index 8177a072c6a453d32e18af9d1d5c0b104f18549b..390f04a06c661f5b65e2deaa9ab4ea77f37265a9 100644 GIT binary patch delta 229 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 gGv9o2DrZIc1O~D#`IO=^b~>N#q; Date: Thu, 8 Feb 2024 11:39:52 +0100 Subject: [PATCH 11/33] get memory_mines --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13888 -> 13912 bytes .../test_duellist_spielesammlung_projekt.out | Bin 98608 -> 98608 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 1 + 4 files changed, 2 insertions(+), 1 deletion(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index 390f04a06c661f5b65e2deaa9ab4ea77f37265a9..c4f8ca157d31be18a2193977aae32e3aa6ada235 100644 GIT binary patch delta 230 zcmX?*b0de-hmo5B1XfJsl;&I_$iQ%hk%2*HqHZx`!Ni5?tRbQd3{n%%Dl?i*{HV@q zuLP8zEXyd*`HF>sAs)zkFxiz+nbC7{CZjrI>Ewxw>Z~)>85mw|-pd%s&lozHU+@lN z#pXAHDU9;nt}i-WR9L!Q-*mF5ym(p{F#>gpGmq^~dmMIHG#TA7@9SzVf$nNKqvc09_%0(8@6 W0WCQW#)Xshjeaw}+N^CX$_xNUB}7L6 delta 208 zcmcbSb0CM)hmo5B1SU-6l;)fu$iQ%hk%2*EqHZx`%*2K2tPY|K3``TxDl;lg{HV^V zt;E2vWwI=zJm(7*1_o~+@5E$RMrB6h$(fAmjPa8vGODvSt1~cM+Ps%Bke|_cGQZ#* z#eH)RB*)mC1>h)uox4c_-6h$D=$fESoj7P*;ter0K7If A_5c6? diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index e93a10bbd3bcfc3682bd8e623ef3217167b68504..202fa72e13505c0351b90040fa759f51200ef51e 100644 GIT binary patch delta 4237 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 delta 4222 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 diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index d908e27..2f9ec3f 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -75,4 +75,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04344689999993534 +:time: 0.04444100000000617 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index 2cacb1a..d0a7c8b 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -380,6 +380,7 @@ int minesweeper() { } } free_minefield(minefield, height); + free_minefield(mines, height); return 1; } From 64e30c3c4ede3ad3ea25837a846039031d2004a2 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:46:34 +0100 Subject: [PATCH 12/33] Chance Header --- .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.h | 20 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 2f9ec3f..f14c448 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -75,4 +75,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04444100000000617 +:time: 0.01351129999989098 diff --git a/src/main/duellist-spielesammlung-projekt.h b/src/main/duellist-spielesammlung-projekt.h index 53b7127..fe4db1d 100644 --- a/src/main/duellist-spielesammlung-projekt.h +++ b/src/main/duellist-spielesammlung-projekt.h @@ -38,4 +38,24 @@ int FieldEmpty(const TicTacToeGame* game, int row, int col); int decideGameType(); Player playRockPaperScissors(); + + +#include +#include +#include + +#define max_height 10 +#define max_width 10 +#define unknown_character 'x' +#define mine_character '@' + +int end_check(char** minefield, char** mines, int height, int width); +int field_check(char** minefield, char** mines, int height, int width, int row, int column); +void show_minefield(char** minefield, int height, int width); +void free_minefield(char** minefield, int height); +int calculate_mines(int height, int width); +char** create_minefield(int height, int width, char within); +void distribute_mines(char** mines, int height, int width, int num_mines); +int minesweeper(); + #endif // DUEELIST_SPIELESAMMLUNG_PROJEKT_H \ No newline at end of file From 1ca286fd724249f90d5b16b0f8c181b2a98fa552 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:51:57 +0100 Subject: [PATCH 13/33] Unittest01 --- .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../c/test_duellist_spielesammlung_projekt.o | Bin 10156 -> 10864 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7104 -> 7243 bytes .../test_duellist_spielesammlung_projekt.out | Bin 98608 -> 99175 bytes .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 10 ++++-- ...t_duellist_spielesammlung_projekt_runner.c | 2 ++ .../test_duellist_spielesammlung_projekt.c | 15 ++++++++ 8 files changed, 88 insertions(+), 3 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index c7841c4..d8b83ae 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -507,3 +507,35 @@ void test_FieldEmpty_returns_false_for_nonempty_field(void) { ), (UNITY_UINT)(225), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightWidthOne(void) + +{ + + + + int height = 1; + + int width = 1; + + int expected = 0; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(239), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 83a04df5cb13913482fb58b07c5bc52d98933c20..ddd2a8d725007083dceec13977c1bb254da43584 100644 GIT binary patch delta 2868 zcma);e{54#6vxkd?H;8+u-j_~+hB~Yn~uQ-V;cxD&SjM!89x#MLxh#G7FyPBWbIZ! zu__^~Sv1Z|)F24KADJSAP_y7qj0O=iO-TF$gMtPLBb%}i1OtekdvALX`j0p3ec$^z z-*fJL?Y(dBgQcU(ZOw`Wc)RWbsPD6l&+Rb*3@QNrV!@%JudYp9Ztgqas`|_Z&|?O; zGg*e}@zMbH#_E||-EB>n?wQbcwOmUU02I1du~KXvM))2Mt6c1H#ii~lVjGom^;i*m zMRDc!r~p3|0nEWw@TR9uC^e=vE0PztkIXsgxrVuL(laVABizyJ8BI31jlG_0Nuzs+ zlcZz3qX{PSC#Pz`&g=FvpA~cnm|~ zP&5YGg+)j$-i~N@0L?dx@pdfUc&J?rZxt(v^f=<%*nx)IWQc^?Iry6cyLWx0!yf?6 zqwv}6UcYZkIJ6-cgE6bqBo>MUwsy1!V9Xlj3Z{q^4ddL#^O&JvPHbztFM{zFSu_>07t5XO^IWUmLgvAYnf;vW(FcehCtjDgs7S~CEsGz` z@IpS-v0-43F-Rp{5}>2cyu6ThxcD;OXi&T#P^b+W^HQ3)uk%?5zi#o}&|wIyR^ z-Hv*FzBM!Dk~DX+-^tEDLpY0@kYq!#LJ9ezt=@i8AdHZetZ5P}soun~rGA9}can3L*i% zQMqD=Cwy&<2fMoBrp4-1T{Wb-3sP!gA{GdvtvbCE;jwY19crU3M_qNoYBT~qkYE~q z955gI=|Zi?p66-MhJBS_cr??#L#U*05S8?uMkRffxXx-EIbap4={(H=DT2RpDA+u{ zD4{~ABzqUt48eXN_7ABD{;V?k1}d3xhL~o|uox=oJ7C25rO}ETR>HZcB-@2*rkL(a zViWN|)d*ILO5WYWsN~%-iXNos5sI4eQ8G*9&Os&SNWe2FYXy8i1K}#M68u@@VwR(- z6Tat(VPz=6j|D!&J|90Ce2TqWufw)BKRk%S^W5mf{mzT z$}&>D6x~g%pVSaVZxGAD<1VW#;s;+;US)<%#-9#~nXh*UE_#G>F+ z#6qNcDY~0jKdHnZh0hYaOv=g6wJ7aIB`01@tc}Q?p287FnD{TCzxRWfqEOkr%Q^ iUl!SW4>_EwbMI5#-v9CH!e+ZyvWf?{=idK{1OEbMd$bt< delta 2083 zcmZXVYiJZ#6vxk)L@hP0r>5*jTdek6bEmz~|u$@>A*Xm6`k-@Evx)+y;LI{u_Il{0IIg_~-VZ><;>MPI^A3K8yCs zBk+fje=6D|3-G((Uq)M`!?)7>pRMp6u{OC1ejWT*vDxwr{GjJ!YBZLXPvCozFPwHc zlULT%p9R0rX^n4&Px@Z!yO>hrj-!U1sJw)XxSyfMoG$qqzTEe@@+p0yvSMDiC)_8k zDMYa}m6WNW_#8XM_s?&)dG#&&pVZ~}8+B{y@0K+wm#xlO8BXAJrxYJHE#bb!r6KOC z`3TS!?ps}_b4}g_CX<(EGI@V7nYc`(5tXxlCq~-AuDwcNXrI=Q1|c^D>!4u0nbPhUr)CqkIJD8utyZ8|QG+ zrEVTK^KBNzjvLGe}bMdndn=%Aa6EPx>avGce?p-{h;lL?uWY$m-k(U9{5P_ z5U${TW+tfteavL08-!Z}`WjIM_ao>Iq6N6eF7fsAZ^SPxLHb$HulX=la&IOM@YXR@ z?>U=#K^s7OLBpV%pobt5G~^bvsnIKKlm2+lZnhzFM)3;C+JUF)x>Ii_OF*iRL}22-AeiOVVZBI6`2`Drn|^2TwJ7< b7n!w1X6ppAqlDCf=9RhXrX`j-*j#uIc=+cj diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 006b2b4151465d726581668ff40fb1ce0c3bae02..847bb7abc3621ec40fa46fd7c2a25bd61a1eea94 100644 GIT binary patch delta 535 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 delta 15024 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
  • >!iI$1=cKu#*i zRFF8_k1U#3LCz@1J0O$syP!qW3ev71F4&;ucD2?Fw8<2NFBGT{qDj~;SsY0qSIs28 zv|wo|vg9xKUJz^;->pWNha;42mr{~hoGK7)_mL9$$W$b=tS+fY5D+R{;$!5=E=WHm zWcE>R`*uP_z&q5L*R_0dZ51WDvE2 zWPl_n$QY0e1<5Z58mmByK#CM(706NrsRyZ0khefKDagM-niS+T$WsNmV_S}>fkEXj zt|(kZ{D(mcaRo_L5Py&?1&Ia8Rge^rsR}X#q)0*XRYJKC1Z-(+Axg;#vJNG!g6u|V zgo1p8QjUUrhSCfL`2nRY{Lap&oDF7);Ul$;XHIy1QvMsvkBnwa2Yfm~dbnB7Q5U}b z!pdfuwGkj{JT+NJ3P`4cyaaMqL1u&W!$!|iYiT*qb_J>e*`w&eHjupv@;=CZ1vw7V z6RW4(OSv0gfRro9FCd4E#L!h{k9m;bV_nS$SKdDqWB^E#ueF9h^juSrWgsK`tb6tv z$WsM*3*=3#{+8Zfu*W<|2((5&KvWiF-PjY5g*~h_?pP9nLaYg2BtBD+43G_B)|x3G zH^Qw6e#;Qbo1(1IW}t>>YtjI6FvgnjedVz@YtjyanECJI#;fTm*Yvd3*kff@C0G+R zh`L;XLbxc=T9g2?ML`CF@CS5D8eamL(aV|?fGkvy1t2%f#I($2xk}3ivN>X#DCq~X zV6lt4AGMpKfkH60*@3es5)bV7lg5Uy)q>uO#g zqZK3qrF-C#BJj9v|0NJM?6F_b%$N~@{ z)4J9M5GMtB7bH+Ynj(Q>6zFS^{$^rIQL>bl!RE3(()$_6P)n-RoPi9LNd0wkh9>Ed zp>>7~*-GyM+I7Ism`vVDUnzbFb6{hnhn)Wb-Z9L;r;K2ZNM-U6Hdy7#cNkLn5T=O= z#%Th^*D$tud3nY8g(X6TnV5nSq;o^qtmq`jJIqFS5wbukMw%R$lIhpK9>Nu`9 zTe*G_*N-ykIoSjfG}=T=9%@HQuVt~p>V2>Z+5c^A8ZF()V(6+AGZa%KR~n5!qT3Lu zbSP+)bc`39UzFO0ve(#YY3?xO%ub?VEJXF}ML3gK5>rbD24RH=9KoC<=V7d$-4NVW zj|`DQha=tFq>aPjVqF)$nfApE*6u0~7sP z?2r^Ul4(>P5G6?2Bax8=sca<6Wap(5FqDVE&`@Zq&HeQSnLpQ>WP&s)$V3pgB5O?% zucaU>Kz5mlDXxUsycW;FZETo)k4zec{VyJW){bYI=nbfH-qY}=)o|JF02#qM$*bTi z2=9S3l}OFwS+J_91kMZt<~o6mMxXK~An%_TBzq^YK)WkAzg{9;o`76uPlj-1=umucoAfkS(8^Z zuVmJo;`t4Vpl3mo1Gg5>uYiOjO88H<8#H_yEeJtYn*Jb|+E!$OtifAM zV@=$}K_ZPMgP#@rpU?&=5dBZJcm9WbC=H*4*w4VQ$DAE_5n4f<;o6eHc97ZT_q55~LV{A`mx4kN*ZTUs0>x9amJ2LbQih zLwlC_a~LGq>^cv>`%Ir#RFtI%kw2L6e~oJhC~uKr?vGJuzU0lD+sezs+xI!eA@kc5 zBK`j~|I}T2I++ER+jYloCApDZC+M?t2Vo6jpQD4srl znXpBnxzZi`Gp(Zct*GV!hn5(B0kNz%D+#%_y&QUeUZI1q%}-@2M;? z>`fS(WuwW%KS6dWx^YA*o{DaqgCX)&>kz*HnOb2@z60@41brU_cTKCHZLkmEAIqfg z4iXDu=~yJl(h6(OeI(a>yqr8*B8BI(!2UxZP{utD1Z^3eEh4m~+WB4crd`xA-{)6069;=O9bX zp7RzK@IIn;j9w;$d+U7 zAD%Ge(b#JyJoXP!>!xDvodP*-_QN$_fbfqcy>{N1pNb#?%Yix+uA@Ns>R_oh7(}_$ zj+Hgmi%dQU@4uziJdj95>Q>0LtTp?+lW03jC*qApEr~Ag&-|6q-5>r(A*ugB()CKE_zf5@Hd^ScRrs`m+F!Pm-jWiCw=|5!$;@Hz?F6 zKup)4A+#?+=2uv!{sBmWBK6Neloy;IUP5LmG`&G)xF{MMA$`hYs#U}^4LSiE9m}P< z0OY!&Vg*QrVp_cpqE;mNT@YpdE`V%N?9aXfvE}cgER8({>QFRhk9Va!C6@W=4x+r; rf Date: Thu, 8 Feb 2024 11:53:02 +0100 Subject: [PATCH 14/33] Unittest02 --- .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../c/test_duellist_spielesammlung_projekt.o | Bin 10864 -> 11236 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7243 -> 7377 bytes .../test_duellist_spielesammlung_projekt.out | Bin 99175 -> 99225 bytes .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 10 ++++-- ...t_duellist_spielesammlung_projekt_runner.c | 2 ++ .../test_duellist_spielesammlung_projekt.c | 13 +++++++ 8 files changed, 86 insertions(+), 3 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index d8b83ae..ee92e9d 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -539,3 +539,35 @@ void test_calculate_mines_HeightWidthOne(void) ), (UNITY_UINT)(239), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightOne(void) + +{ + + + + int height = 1; + + int width = 5; + + int expected = 0; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(253), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index ddd2a8d725007083dceec13977c1bb254da43584..948f353df11a42e1e7873de3dcee36678e7aa5a6 100644 GIT binary patch delta 2412 zcmZXWe@t6d6vxkPr7LCa=(ueKDrJ7ba#o-?T@*rnOjIU-*lR2)J1|uLY&zj?wry;$`yZzkn z_ndp~>$~^0^IbphweMgBAX`%{L0Cf6A87s3bqZq^CLBH6}$}BY)+wT=mvntbR zuQT| z!BpW8uh~9gX|1imWnm@SUgt2|{n%g_*y1SO&6AkP&c21@ii8LHBXMBMzoBMIMO{Y* z`r;8_f2ncAEo-yC)u_*%FGv5VQMb_6*PHD5;+OUQLKXKb#R*^0qdbb??oBe~*1Sbd zA9Cl5k)n1!MaFd2xK$M5KKwRS#^;7nBI@|V{3sb87)GIZo$utg$#^$w%<~RQTY;QP zJml)&r*xF-IBvw`i+5bje3pzCvc{q-$bD;#bwsm9ox6s2ld(T*#N3UR%eo;Z+--cG zVp_8?CQmJ|w;Qu=%^D%kJ;gCH0%XYL2E~lWBhGnT{2E0RQ-t`&Q^)@$!%l|gxbq~l zr}6n3Z9%(OoMtT#L=uT3)(+F%MJ6*a7Jhyxd>|g~gIM_4L^KY)&-BFlwkM)dIFN|N z!h`W$(VpRO4ElQxhqY^^6Q+FJjxdJ%a!hoTl_qO&#GxJgTAdDJe-~aBIE4LXT}xuG z;wF$(+%%GkyMd(Qg1DWx;E2N$NGeVv?MKpDu)2yHNFu7h_mJxJXk=d}?K>il=UgTGk<`@vq&-L4D?}fX`xR;56D{d3-oFLRc-S** zC2B-ch|UpxK{QJQnfW+W63JgtS%X7F z(LTgc5-$*aO*BVj#kYY<-bA#6XozTBlD1HhVz?UtCUH0_hAT_+V^Q|2hZ0YGlI+Fn(F208BG>3vzkk-pEnT=O|Zll+RWvGiDI4 TR`1bDH%3jOx7sU?RsZon7eFl4 delta 2224 zcmZXVacomX9LImx(#O{BnT>a^9c%5DwyWD|Bgg=&g#6(nZ1kHqu5FQK=jK+jS<6=T$U`B(QXxLaVghWY3g8uHV?^m>!zU$|G zzrWw_-n-uQet+(6ui4E4Alu(DfVP|&s>qfAOfi7|sM4W6*SeGS=EmYpUzh+{KfuFk z?X=-nJCt`UYnD`KotXV}W$s?mIJg*~Dkh>V>YqdLGrVnzi8U;0BryDNSiH=Vo{M4e zE{j!UJpez40aoCH$YwcL*=UJ4=Wp>`GR1BGB+EKu0o!2UT&UR3#8J!koG20Jt+;Iu zyt-%L#i4dEy7Eiq#~%e|!l!N*WyKi)N@(TPSE@8W%AOcjjdypvCo@uh2k znCH)gEqrrb>a1&2$-)=sKrlNhZq`38-nYy6FvWdBapIEQV@xYUlm&ZuJurXV=)=Ba3rm!Hw|2j)rD$U04u{w()mzOib*NXjmlAG z%BAMETh6|!KbX(s1;)gIh*iFKVBc_h2)6Csy0?GLa60XX$b?61sa}v-ia8v*uy0f( zhl${2z)tL&l$OC>$4wyVxG5wZcMVC$Ex~2E4DUE>M$&N(X}^)S3RkC&+mS)kfuABh zsgi#n?H{6DUf2BqNoP!xW-M^EAtYVpIB8`*S6hjsa}Ogm<7gQUUy~TYXV?F6}}$UQ@@e<46h<*q=|gS?K^qO_Bw-6O3Af3QY5wH$g8TNNFUq9UveHFyQ! z9QHxH47h^5-0T7P9_^%}4VaAKchHSW1!OP^? z*{1Fv?XHQ@WSspXoMb%pXFeVaV7xpo@$ZP@7Su1kBw IgNE6E0dh?NBme*a diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 847bb7abc3621ec40fa46fd7c2a25bd61a1eea94..0556a5a5bc5f5dd51fbdefc3334d3764a30ed0fd 100644 GIT binary patch delta 481 zcmX?YanX|3hmnT?1eS>~FxXDy6&L)%#K7={k%6H`5G>AMHPJMi@x{c2%B(d&nShBW z)mhK5GcX*O_*I#4=VVDnb+&(e3=B>plie8QI30i*<@gyG!Y1c3dNamN-pQ!W+9bfh zkg)kF<9#N{<1Q*3pMb^!X_gqEX~$VqK$g5H+(yi|tC{p_b0KW~oW z@Me*Y`2$pN3y39w>KW$<7nSD4m!uY#FfckyKENYt=`aZ>&NPuhBrh>H6)1Rx8N_7~ z$;r%1jn6C11qvMmI*Mr`2ZLx?YEfodWe8Ze)nq6vpxPTy| z7|6v8j(i-gOisM4%%V(3d01E&7&hAosxe940m=yhrP&xB16kH!)>|OUW^=mmMn+bU zxmJ^9MZ1}*nI<}lOx`D2#ptlvQY?^37-ZdbpeG?ffq{wP;pT3M?aZLi;{%0Wd??U` Jm9BXy3;+u6Z{+|0 delta 410 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 T@|zvWWdFlp|A~2Iv*-T<+H9=R delta 17183 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 diff --git a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c index d8b83ae..ee92e9d 100644 --- a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c +++ b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c @@ -539,3 +539,35 @@ void test_calculate_mines_HeightWidthOne(void) ), (UNITY_UINT)(239), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightOne(void) + +{ + + + + int height = 1; + + int width = 5; + + int expected = 0; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(253), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 55e366f..3cd6a01 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -71,12 +71,16 @@ :line: 228 :message: '' :unity_test_time: 0 +- :test: test_calculate_mines_HeightOne + :line: 242 + :message: '' + :unity_test_time: 0 :failures: [] :ignores: [] :counts: - :total: 17 - :passed: 17 + :total: 18 + :passed: 18 :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04556480000019292 +:time: 0.04488050000009025 diff --git a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c index 5181808..250761f 100644 --- a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c +++ b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c @@ -27,6 +27,7 @@ extern void test_CurrentPlayer_returns_correct_player(void); extern void test_FieldEmpty_returns_true_for_empty_field(void); extern void test_FieldEmpty_returns_false_for_nonempty_field(void); extern void test_calculate_mines_HeightWidthOne(void); +extern void test_calculate_mines_HeightOne(void); /*=======Mock Management=====*/ @@ -108,6 +109,7 @@ int main(void) run_test(test_FieldEmpty_returns_true_for_empty_field, "test_FieldEmpty_returns_true_for_empty_field", 202); run_test(test_FieldEmpty_returns_false_for_nonempty_field, "test_FieldEmpty_returns_false_for_nonempty_field", 215); run_test(test_calculate_mines_HeightWidthOne, "test_calculate_mines_HeightWidthOne", 228); + run_test(test_calculate_mines_HeightOne, "test_calculate_mines_HeightOne", 242); return UnityEnd(); } diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index ee40e94..6104a4d 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -239,6 +239,19 @@ void test_calculate_mines_HeightWidthOne(void) TEST_ASSERT_EQUAL_INT(expected, result); } +void test_calculate_mines_HeightOne(void) +{ + /* arrange */ + int height = 1; + int width = 5; + int expected = 0; + + /* act */ + int result = calculate_mines(height, width); + + /* assert */ + TEST_ASSERT_EQUAL_INT(expected, result); +} #endif // TEST From dbcfaa712aa7d96c511cd8ecd1f1ab585e23dccc Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:53:55 +0100 Subject: [PATCH 15/33] Unittest03 --- .../test_duellist_spielesammlung_projekt.c | 34 +++++++++++++++++- .../c/test_duellist_spielesammlung_projekt.o | Bin 11236 -> 11679 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7377 -> 7506 bytes .../test_duellist_spielesammlung_projekt.out | Bin 99225 -> 100298 bytes .../test_duellist_spielesammlung_projekt.c | 34 +++++++++++++++++- .../test_duellist_spielesammlung_projekt.pass | 12 ++++--- ...t_duellist_spielesammlung_projekt_runner.c | 4 ++- .../test_duellist_spielesammlung_projekt.c | 14 ++++++++ 8 files changed, 91 insertions(+), 7 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index ee92e9d..6c11100 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -542,6 +542,38 @@ void test_calculate_mines_HeightWidthOne(void) +void test_calculate_mines_WidthOne(void) + +{ + + + + int height = 5; + + int width = 1; + + int expected = 0; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(253), UNITY_DISPLAY_STYLE_INT); + +} + + + void test_calculate_mines_HeightOne(void) { @@ -568,6 +600,6 @@ void test_calculate_mines_HeightOne(void) ((void *)0) - ), (UNITY_UINT)(253), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(267), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 948f353df11a42e1e7873de3dcee36678e7aa5a6..8147b679c8848c37d553ba0840479540eeff7480 100644 GIT binary patch delta 3087 zcmZXW3v5$m6vxlkuC?@T%f{NZ-J{zsdt=9A8?p^TSsDltSwf~`lJN+ubW%2C1rh`* zMw1yKP_I#O19iq1NHQrApFv3`V1@zID3PEhARrQv1T@S9&-Z<|=X&YQ?%nVEpZ_`M ze)sY9UhH^nY1Trf0N;*P0L)Bed2&M&0LB==?oy#cAknzSlA|Ps)xfT7fDqajt1=YC ze?iD;oic5P6!ha3O#e3VSCzf35a4XN=4XEAUDWz;_*=O)kNNElXzeZ59%q%7;bQFt zrskfo0DM&paHCvSaVJOFD-LGUm~*Z@7PX2QSjr8wPfBfV$Z+)!QQ4-O{`H^lrE1IN}w} z{+6R|ujqA0jzP3=?m*);{i4|J6h51CH|%`w zA=&SOUK0Ct)CTI<*K_Uz*vNfDQ=O@lF;mJJBW1)jLmeR7(Uh%>=a0T8`b4qvzco|p z*hmn^n?&VHlyWGQ;^BdhjLOGr8niv`Om)7JI*GST)&u{uy62SdC)>-q&9}C1W4IsK zUc=Z|Gf8_WKT{ni^K+@1;@azgz+4~hb-24=J|6i?=n~h#k7S26 zc$_MWrAxYmEBZ)RE|R|^ z?Jm(;YbrX3Br|>_&5pB?S`0~68AggrG1Hb3n~|jUB2v9*cZ{?myqkQzcR>S^oLv)= zoSjC|0~8&hs1ui`Mv*%cN%q(hN94aaF4#}vP0~v7#z)r{@f6W55$4ehT=8V-iA2pvvhf1aI*6X2 z=rct8AuPpR0scK8bBh?h{}OqKlM8}GD~O&VdY$MCqF;yr*AH2xoG3&TAsQfh_+7#i zL|2F$xV*@M)kF)4_-~zz?j{=Hl&mj*li~9Va1n=>v{My@HohDOwCfdH8!~WJ;v23i zU}gMEG{}dhEl2n8%VuR;SYocr;)0X7f+KKExERBej delta 2736 zcmZXWe@t6d6vxkPx2|hT2jjKnN6U`~3`Pr#0ULuDL2-+QER!rVMkUq20M`Lw$Pz_5 z5=~e#mF_N?ahMs5W|Np~>&)hlWpk0Z7+A#Y5A_d%Mk0&Tjb&(JjCk(5@12)tZ}J|W z`#s-t&h7hgd8eQG<*Bq*<_0n9ivhML(gGPvPJkH(5Y5+g2q)?e*e<#flWN5#FTj!u zz*{Io4fv-C(jTd+-X;b8+=A)e#B!;lEeD{ji0839*9vL_INe{wcd|T31zNj;{6)6O zb|T1+Gd1Ik4d8MRpub2~QIgZ_Z72WCRl~0OA-P@STA9G)_Ejp9`x)le@NoH;w zVXgPaaLLbM7Mpkn$=BW4)73o)Y~?r9Y>Alfa8JizH?TkDyxT7tu)pN2!@pk4{+6>S z@5>DF-pG31r+6Ms!w^;b^?%itEY)sXs@>76fx-(T)%=d)QDa!kUnW}paL*x@)gl|u z>t!`-7I#N{mF$~`*8vO(@5I-XHe*SfGt+K_%lT=aN6p7OBRgC*ta!bFO`p~J#jwMy zuTdQ)+XcgxE^L?0inG1|e>oiD?S79sPxcQi_9@d|6|Uh|{hs1xx3Peey482EZ>aMS zuy;-KU4NB&oQy|}n%YfxD@H4A3PjWevb|!ljhePM10glvW3-J~Yy+lkHjuAI$<}VM zb(l79R_W$*WZSLVv>(yddFZ7WK2v*5cY9WzdXL;qmZCdN+mUjml2u3X@gLLf=+-o2 zxiyxQ9cIb`RvsW*iNzK+Z3Wpy>Ls#eTWmqo_E33%4`+Mo{~>Fd#hPwd1B0E<547|h z?gi$=8v){A6M^Kl>~zMRx#@f%XHBlN!QJS7JkyqizoHiGUUM4Y+jApni}(f_V>#KM zdzbN^kT3aq=(a7Mje!b06xfC5N{#m8IfRD;4&b>;)8crRzK@ZlZw5*F=8&W>j2Cqa z&J=hWN&1qc{X|+LZY}7Gqp=538b3s;){<|Lwn}u+ZbVNZ$&BwwbF4A6K_ppak~Gg+ zLu){ixhIg~TeWuANeto@uFC%hAjx0HDLO^ba};&q7E!C^)+5O#!$@_S_7Q3K zNh^rst&zsPNMg%YV3f4;q|K9t-JlQ;H(bPX01pRzf#(uUyNTgajdo*(jE*2l?HJLQ zdNl5UWfE73n(^J2$$OAway!ukMW;ynl;{CP?YK|L+zg^8k!0nl(8OcqhF%IMDSVx@ zZ;2G#ePnVGk}Tat+7M~45q(0@uSolj=z$yi%Yt^?HT1O-)gj4f3u$dcBNTmuv}w|A zk@hpuI(*w@JwKAxEe^#7!Y&H$Bdvqz7)4K!c9v+4q6?(`LFDurjdO{_bCi$oA6|a( zzecVri0`MQ0$o#}i6}~Rgy=n@YeWk~px0BNm`Hqyh#m@bGk8|VF%r)Z-5^>ba^h|v zlgo%&iTa7g1tqVPywCVR>BhBU2MqJ0rLWd5Vn7Uh;la+t*OT~SvW{ilBQBAhwXj69 zVq3NGJ!R?!FYY&DU_A`2@X<2gh8$hP=N`3+M6-{T@XyPN;#>3pK5rNhA5#jFbu{Q6 zfC7+hpGZ+&NKwRAD2I_XlA?_5OOZ~dD3dA5`4r`fMY)+wZvN56ql$xHi2VK^T7q1H diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 0556a5a5bc5f5dd51fbdefc3334d3764a30ed0fd..e0b300a5647cf713d607db7b393078cc5d8a290b 100644 GIT binary patch delta 501 zcmca;dC7{`hmnT?1ipzdFxXAx6&Dm>W?=Zj$iT2e5G>AMGto4giG_9IA|=*2ObiS; z6HltMad0p&2#8Glro{MlvLvHAs}(;3!=%ZsjPjgLK%G%Q-m=NLjNXiMChr8w9uQz) z*s%F2<8LO(<1Q*33_vA7nxzJ4+Hn>YkS#AlH{WG>!o(GxnNpJBpO?zOFnKlmD<*#C z&C@x&Sn6Z{0M*jE=ED(OMv8oKwKcz#x)VnwJa|odi_J zG?76hFEKY2$h`ve64OK$k(|uD)cCy8T%gcFpd*+jaxjRNr50tTRfd2~vkn59#0@r0 zv?#SWwFDx}Xf!#ISBg<*at*Jfq$bG0Y+yBF&c6A{+3}uvnLw8)Z(hfn!pO@Hv1`WmKNbE8w*`R6vkX1mt`MM?Q{LCMRB2W<#cF z8!(F#Xq4^d-NG9gSwW`SOfD4dW}3}3(NScwkXRL?)8<~WP$uPTa0?X}K*j@O5>~FxXDy6&L)%#K7={k%6H`5G>AMHPJMi=>^NgMM|tSK&gO< zC)L@`urn|m5T5u=iE-y-Nk(u_VxZ#yP@8rFrossl_D> zj1I9t(OMv8oKwKcz#x)VnwJa|odi_JG?76hFEKY2$i2c0;SX&Dy!3LHTbN0LAVxdd|*MXja00jmn QhKJ0XLnKc#1A|Ni0M+$m*Z=?k diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index abfa277a11ee6321012fe2bedfb77f3de3d1cdf2..3edd2e589e63eed6068509aa00539ee361fe8899 100644 GIT binary patch delta 23694 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

    Y)3-Odn>0&>9-<{W(O zuo!%8s#r`14}D|mlqv?&qC%DfIand@(6aNJMgppFs3!9}ftXcHuLC)uQuH>E7M0XR z>xdcXiZ&1q-~izC!VUL3`&H_EfY9X(b0(0@DgzUMoKhjP6)8Gh$i9~WagGqu$Sn$! zteRe9l*~owRDs$~Jm?^&`F{YRzlCu+eH=)Hsta0xRH#~f4M>?v>TVaDR8Faw^gi;i zbM|`>kW`0id>&Cgr?jZ3N#$ak^_7{-&(y2}2SBjZp*$xCA46dFWjhcGK-PaTH^bU- z7VGY_00h0mDzPrL4w;2DFh(U`O*T|*+Dd|8r;t-Z_X4@6;%Np#bHW+FkAMh*(Iv*8 z1DU3>b(?rBs*VtSpr9p-b23ySBIJuc`~Qpw;ks#-f32>y3*aRRFA zJaEtGT<^;OwWy3eVO^AiQN58waoGcbzYztZFLPas_5x|DaGhI6fJCXhI0GabdMJ>T z1mRO4li-2ViLZgIQ?=%ml$e#SK0X8_x55>ne-Doyb~!sU8wmDA7q905q02d{9|MvA#M!b9K$cawYTjb) zmWL;&F=f`&JQg-^9~jh*)4On88JC4~apMbJR6SJg&>k+d!zVoyI-_ z5~B*;bxF#V#}LpD?*|}8(Uv0~jBcZs;&Q}u@@AKon-N}>i?P-*`3PM)SdFSNHXg`M zhcI*sbAd!4cdj6dfn=+A)&VK1aGfzbfi$a3{u4;PisxJuAe&0jMIaR_`8r6LW#6C!7UHlZwX*Bp-k5;L^kcfR;OuoU-!567yU^P>H<*o?O)k`WVQ0hZHsA z29Q>GO`}_O`d1)$wd!Ka9Zy%+dEi{{Wa$(J`6}c9-}#VW&mkZ8CwX1BIF#d zOM$2--x?rUP~z0H8OW9r>;uko{SIPMsXhwiwgWkH`1^TGqjmmGVh%nK4?lc=A=}>d F{{Zl|fSv#V delta 23671 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 I#I^ Date: Thu, 8 Feb 2024 11:54:34 +0100 Subject: [PATCH 16/33] Unittest04 --- src/test/test_duellist_spielesammlung_projekt.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index 7f592ab..f8f06b0 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -253,6 +253,20 @@ void test_calculate_mines_WidthOne(void) TEST_ASSERT_EQUAL_INT(expected, result); } +void test_calculate_mines_NormalCase(void) +{ + /* arrange */ + int height = 5; + int width = 5; + int expected = 6; + + /* act */ + int result = calculate_mines(height, width); + + /* assert */ + TEST_ASSERT_EQUAL_INT(expected, result); +} + void test_calculate_mines_HeightOne(void) { /* arrange */ From 5431ab49dcbf373d1fdb35b03abf9f58354b835b Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:57:00 +0100 Subject: [PATCH 17/33] Unittest05 --- .../test_duellist_spielesammlung_projekt.c | 76 +++++++++++++++++- .../c/test_duellist_spielesammlung_projekt.o | Bin 11679 -> 12646 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7506 -> 7780 bytes .../test_duellist_spielesammlung_projekt.out | Bin 100298 -> 100916 bytes .../test_duellist_spielesammlung_projekt.c | 76 +++++++++++++++++- .../test_duellist_spielesammlung_projekt.pass | 16 +++- ...t_duellist_spielesammlung_projekt_runner.c | 6 +- .../test_duellist_spielesammlung_projekt.c | 19 +++++ 8 files changed, 186 insertions(+), 7 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 6c11100..6ae7a3f 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -574,6 +574,80 @@ void test_calculate_mines_WidthOne(void) +void test_calculate_mines_NormalCase(void) + +{ + + + + int height = 5; + + int width = 5; + + int expected = 6; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(267), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_end_check_AllUncovered_NoMines(void) + +{ + + + + char* minefield[] = { "000", + + "000", + + "000" }; + + char* mines[] = { "000", + + "000", + + "000" }; + + int height = 3; + + int width = 3; + + + + + + int result = end_check(minefield, mines, height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((1)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(286), UNITY_DISPLAY_STYLE_INT); + +} + + + void test_calculate_mines_HeightOne(void) { @@ -600,6 +674,6 @@ void test_calculate_mines_HeightOne(void) ((void *)0) - ), (UNITY_UINT)(267), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(300), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 8147b679c8848c37d553ba0840479540eeff7480..2e2058c4d2462f75a0fae8ae7df30dfc03da13a8 100644 GIT binary patch delta 3341 zcma);ZBSHI7{{NpESGhc7nQs0qPz)r?LrV+Ktn#RzwsIVAE(;Bn>=bqhXMZR=rxaW8N|L1wm zIhV8N-UE;Rv?i`vI7nWWX+&k+ajpr4cA|bkG?;1XG^cx3L-btm&F+I)1^W_+N@9t$ zY~@y?DW~z3Gm2&_A#~q{3ZGBzzA{y-OeMONW2A{RyURkf2HlCd#sZP1l_GX)y0KnN zwFJ|ReIj#$EsE&tbfT18RmK%OA+FhsmG&50G?YH?ux2FKJ;r7Gl)$piOV121@AD4M zG@Tz+Go+fcsyU~c?^JUY)lp+aHeKG4&MHrAm-i|f+ive!G}hhT!A`4Z2sU+khx@8L z<8_&VxHK#WtxZ~8-eH+z?X!BIlJT~^O5_{A+n3r33kxBa< zC+-k|DPmw8(MtHD=Oxr}CQ0;&-_TgPo1HL8WQV$qPV`7j4Rw7^JarP&Lfv}OJN)e( zb^cag-P%U~+6{FT&CSbN*S2l;Z}j`>YTIg>TK(-L;zcE@?vbfI4IW@p3ygJ5{$?ME z2|_BC?&YS4XgwrUtC_h*&&Ag8C&WW&IvtG1?Mci)-69wybWxZ*{w$ z1c^&nty=f%2vgOgMpw6Tb<`jc9j@+7Fit1VD|BE>y3OZxE%dnDs6^sV)oXN{S=Uw1 z=T0#0(dQR#<)oiSB@K;A`X!Rot1s5i$)s7b_BSJ%d^}aC7VBK77dyg6f5d2TR_R@A z919yc#xdvp`Vbq3!$zu+l2ofN!p}#I@kYehkyNAgnualuRHNVGn9guaf-%!os#nK_ zlb?(jJ6(Bt7aPqH{e?V%Qz95Eh-(a1&|8^NCBJ`rDlXCA&1Ex{)y-w<*4Hri@zHJi3r zvYeJYV^wN$^p+-HM`Lhvsyix>g6Mu6B@3_#qM;8O41*O{}p_> z@gn{T)2C!;@|UX9Lfnf?T8DcE{xsTvyF4&-3gE8ddO<3#U#c1CYBYem3e3YnP>h~V zD?lnR$l3+g$}lSx*91~=Z-Pq9+_S9x%hZCyO1UqC%!~k?V^On)%XENL;A^bK;?PuD zDM$^sA0#)pPRChG!B&^Yw@xLX43I|iKx%OYyYHGV*00eaw(T)QbIjzqAT`J~kbGt6 z^bTuRSj)hHpyHN-=9zI%vGzV|=UI!#e^SMjjl=U-$%`RoAX%danN~2>Gc_=^GWCGu z>qn=PAXV>gkQyWhJ5p&_C3*1Ypbv1Lgg=b}N6_S&;+OEJo3sRTRrV^7(ps3dF?BH= z2dRwftZA5n%9ZZ}Maw}dPA&vm0JGW5_AaLVOrL>N${E%!F#W;w57SJ0IHLlj242Fn zl4%1dpzL0t8srGuCz)(G{gmqhsf=uLS4BhzzXT2F6a7)CsA ze4LvVcrj$)_W?tGK)dcpB{~p_k>{nF{Ci`RzA?(_G0G2Pl*{3HMM~cs6BL6NlDfjf zCyh}u$0)_4l=fp&~7cDbx`{1nmAD_m?1No`O;rz>v$R{-Y E2Q4wSJOBUy delta 2527 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 Date: Thu, 8 Feb 2024 11:58:27 +0100 Subject: [PATCH 18/33] Unittest06 --- .../test_duellist_spielesammlung_projekt.c | 64 +++++++++++++++++- .../c/test_duellist_spielesammlung_projekt.o | Bin 12646 -> 13577 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7780 -> 7929 bytes .../test_duellist_spielesammlung_projekt.out | Bin 100916 -> 101485 bytes .../test_duellist_spielesammlung_projekt.c | 64 +++++++++++++++++- .../test_duellist_spielesammlung_projekt.pass | 12 ++-- ...t_duellist_spielesammlung_projekt_runner.c | 4 +- .../test_duellist_spielesammlung_projekt.c | 25 +++++++ 8 files changed, 162 insertions(+), 7 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 6ae7a3f..5502d62 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -648,6 +648,68 @@ void test_end_check_AllUncovered_NoMines(void) +void test_create_minefield_ValidDimensions(void) + +{ + + + + int height = 3; + + int width = 4; + + char within = '0'; + + + + + + char** result = create_minefield(height, width, within); + + + + + + do {if ((((result)) != + + ((void *)0) + + )) {} else {UnityFail( (((" Expected Non-NULL"))), (UNITY_UINT)((UNITY_UINT)((UNITY_UINT)(300))));}} while(0); + + for (int i = 0; i < height; i++) { + + do {if ((((result[i])) != + + ((void *)0) + + )) {} else {UnityFail( (((" Expected Non-NULL"))), (UNITY_UINT)((UNITY_UINT)((UNITY_UINT)(302))));}} while(0); + + for (int j = 0; j < width; j++) { + + UnityAssertEqualNumber((UNITY_INT)(UNITY_INT8 )((within)), (UNITY_INT)(UNITY_INT8 )((result[i][j])), ( + + ((void *)0) + + ), (UNITY_UINT)(304), UNITY_DISPLAY_STYLE_CHAR); + + } + + } + + + + for (int i = 0; i < height; i++) { + + free(result[i]); + + } + + free(result); + +} + + + void test_calculate_mines_HeightOne(void) { @@ -674,6 +736,6 @@ void test_calculate_mines_HeightOne(void) ((void *)0) - ), (UNITY_UINT)(300), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(325), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 2e2058c4d2462f75a0fae8ae7df30dfc03da13a8..ea923d5802224f2eb6052a34ce6ec8137a5db595 100644 GIT binary patch delta 4780 zcmaKw3vd(H6^759aYB=p?9tK$gI zbZ4~t-T(aO+`D^s?@IdT+JSXxEzAIXn_CG`7frKduEO>?1`sY&b*PWd>DIR(JJOoW5di@bA_PocVdYP1<|`x^xh(X@(QJp6{d7a06VbxXob?m z?9$B=WgVL$mD!bD%$`{;12o$Knkqzz+}K(6*U6E`hFl{Ufg#ro9Uk6yU9ZYG>AF79 z=tv%P-N1ux&^0okbByq;0oUd2TQ9>#(-7*FID{dcgO5uM4!Op-=i`@fH|QGszG(+< z4!SP0;X&AON+dZSN{S4*?r_`9#~w~G4!Z8J;f!}7eq7#p)RlEw0kY^68 zaOmRW+m0!iR^z&{<;Zr|81h(+Yb4`)fd>yB47o7$r3iYZ$@ z!f~Ul>@hSlmvTF$Soy**FSpqB?e*S{u(z{#X)rKjX?l>%&M&XG#<-TFJ@Bmi%NS|Tbff( zit(6oEUVJF6P2v;B+DosC$9~9LYC z^c^?Rq&7BzzH^q+nq6(_o+M_p?}a|MHx%;w`of^U{;cwP_J$J1r~NMGe2FIA-w+rW z-Qn*9_}ooe&2A}`rV=A}8RKFE#pg_p$U=5M1>iZJvhU}3r<-#))-pZveX*i(~wyzga^y-Kg61|pb&1Z8q`@%iG0I(_SbL>!xJ|jAw#%AI9O3@XTVmya8 zFw};%a(uvMXsQ0(HjK1mBxfD4nVQ;zcj8IZop`6K_SssX6O=!isvY-u6&gOUOvV){ zx=Iys{3do!ahMlKlTsA7d7iW>MS0C!&#a2aWL9pO&2?9>c%FJ8|D#>UJS+h0GtuhF z!v?T>qScwFUd8*OwFY<@oAOMKxvs?!FY_-E^ouehqNSDjShTb3+gRSzX`hm9sb*78>Pc_kMt>OC zigEX{yh8g-9J{zuixP@9joYGm#gPqUt4^>jAe;L9Zt{l0z7CJyy_r9Ar5EvniRnH{ z`DF?D6^Z#BL0_QD?_2K5oeT^ zU^B*T`C+do)EL~1BTU9A1O8$A@?$YuJ!>)GBb%jX+4!6b1h6_;y;V+LXs9tvweskq z+#fbrxg`(R_H?c{XG^&NHf*Xk(acw-7gVM_Wx(>yLV33~pX7UM;bWGo+Pp& z9xyJ96*!LBYDznjFvdu`Mp_NNPK3{gBzy;v_-bQQ?&Pt|54l_2S10g^a5g`$TjdPI%l`I{gG z*U0&5@_Z!G$rhvqs`fL|?vhrF?@ZxafwWNd^^OP>_k-&!aAaDNTQQhN!w5K5k)^C?Q^1PeCdkZ2BZpgB3g-dQuIwt!~PFb z_%4MRz9>a<2GMdPQF<+D2TA)CY3~t@QB=kko2ZvbRE=cg>ysWDNNgnv^ROD-PFj@c z1Vzu0ro)$v$jC+#-IWkEQM8S;jtuNy7+<3B9ts~I`U6G(LfQzC5no%P<02$cZwAp4 ziat%mpP^DdIT1ijOU`F;D%La;EFxM%w2kO3qEkdyiTF<^J}eVBh#HA{R8rT!S4jK` z(eH>xh>~$l7X{0ST8P#Y?Ib!vG)#1d$S8vZw%C{Dml!@T0L$>La6d)))AYO~{_3q) zZcXoI&C$i?*&8szH(c*QX8eDQ%ed3u84O;FrjA+HyI9cddM(PkYe8>&{u`e$5}3jhC4yjW{h L4$GSGLlFK4?pNKa delta 3942 zcmZXXe{fV+701urO*TI^n{2YX*&pQRCLsYbOOj1VAT=b2>3}gP2B&m{WRomm%O;Dv z3pJIpEuAXJOiOxO>kq889i=V96kSLC1FC|kQ!`SmGeT`C*crv5g)*bHwN}6P-QBaU z*_n6ubHC?%&bjZsefK4Y?*7w+ZCF@IeN4-U`sQu!%8pW^1wnMhZ|KxBf7`UB7yN;B z{%L>U(F&sOG9pWh4iDpNfb8p5cCOMwX55DozgRMVYpG>jEzyUqvQE^Mx=lnAm{zsP zA>lX8)yuoZQd7EKJ}Uf`#b%=4*AvyW=@RbrIq`al{B>E6XqRu7Hi#p#$<|Xq^l*iY z+kR*Yls>b(T*%ui+Qdm2u4obm`vg z8>z+FnF-!)=u}EYoAG7eG8;+GeL5N6w2REAOe(_CCqoI8KbP-+avp- zRJ9elU&VLHL@X4aqC$_FkfRktq4zm(Gnv)bO&kSpKsD)+Orw#>(a_{*EPRK$&V{}o z!C@T>#iu99GIYX2Uxo;ph~JN}&|f{GEoFAmJ3v zGU#4y>MoJ9?jF-KCGwbit#Hd1TrN2iEZHb-9mG2HimZ4bJ;sXuo>`E`SkOQ8Y^TRq z&%1gyyV~>Ry`W z*XwSVGeyx&1U>S4mrHK&midF$tbHNRej#UnwrhDnoL0B}pelRxFsJ+^o1%V3;+*>Z z;8vi+d2gTp8r!~~wP9Bw@#9?O^Io^StE*Oy`^x+qv0v$Re<#m=JZG=y3U-Lc2l0#7 z3pv3lPh?WOGqJsRn8i19N$>bp`afjjp=@pA4m=X&6~E(i$k#h<0WnvJ=liS1i4NPc zOZq}y+5@??BTH)ihuId*v&D0^^GoXe3vAn-XPe5|>@}^+YRa=sM>00!q&9~Wd!k7a zqdE6@O`ZR<>>kJ~I+U|LRnw4ql5N2}+iJEYv5}7L4abv_$xw9cp2#eTri-`=`buBs z{Fc1@75Vv-vB>O>Xk_y}^9l#L zW8W-S`UZyy52P1U!=|S``HA{=TL6zw_Txx@vEFJ*UuoQCPN~P72Fr^dGOe=}nzo)R zE5Ogh3#|i(lkULSY0wUg4LB^c3u6}!C#5iI-wBZREr1$uSm**q?OTD3FNm3wwt}=T zZD^?Aq^m6U;YF#95s)^17u0Pe|Bki)FwNk_t)t%n>5Pl4S#UC1OM$H(UTl4#T%i=$n6E`9{WJOhL(Ds z#ak>kVEfg^QP66`_yB9)W9>3)<=B+9uMebiKMra@u7x%;ZDktQltOr##aX7KpfyJ0 zmq5DU`ykz<6+b4e;WY7v#k-PzfYFD;LZ>jc8QO0UUT)APELBIhgS0jSN@?83;$fyU zAf56qYZfd)XQ=n0raM8}r%ps`dzl_$dW`AkAf53_ip8r;H<O2ByWT`9W83BQ|99 z!G?;U`Y&$SnE&tanT$tWQ?uA7KNWC5nUe1XnpzT>81@0g)IV~nP5vh(2Uj+UFU#=C zrqtsZKb{Hr)&F+xd^2X>%6QZ!iGujNut@pkBIUP>ls6YCe@iWrK3Jp_;Vq;;+4j|o j6#pV6n5Xn(7MKc8?3o_J-zTvwhtkh?c+Kgzf;RDA_T@9+ diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 20ddc5297118b9eb00077fb9919345a3f0002494..08ed359ccc3d29b71ba1153f60bb0218b6e3b336 100644 GIT binary patch delta 582 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 O_@@g;j5X{zzyAlqvuP&) delta 17564 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�{9f*uJ9ZOe8bFupkY*V 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 Z{x2g^tBJV2-@BAeuznwZj(^1K{{i9e++zR$ diff --git a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c index 6ae7a3f..5502d62 100644 --- a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c +++ b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c @@ -648,6 +648,68 @@ void test_end_check_AllUncovered_NoMines(void) +void test_create_minefield_ValidDimensions(void) + +{ + + + + int height = 3; + + int width = 4; + + char within = '0'; + + + + + + char** result = create_minefield(height, width, within); + + + + + + do {if ((((result)) != + + ((void *)0) + + )) {} else {UnityFail( (((" Expected Non-NULL"))), (UNITY_UINT)((UNITY_UINT)((UNITY_UINT)(300))));}} while(0); + + for (int i = 0; i < height; i++) { + + do {if ((((result[i])) != + + ((void *)0) + + )) {} else {UnityFail( (((" Expected Non-NULL"))), (UNITY_UINT)((UNITY_UINT)((UNITY_UINT)(302))));}} while(0); + + for (int j = 0; j < width; j++) { + + UnityAssertEqualNumber((UNITY_INT)(UNITY_INT8 )((within)), (UNITY_INT)(UNITY_INT8 )((result[i][j])), ( + + ((void *)0) + + ), (UNITY_UINT)(304), UNITY_DISPLAY_STYLE_CHAR); + + } + + } + + + + for (int i = 0; i < height; i++) { + + free(result[i]); + + } + + free(result); + +} + + + void test_calculate_mines_HeightOne(void) { @@ -674,6 +736,6 @@ void test_calculate_mines_HeightOne(void) ((void *)0) - ), (UNITY_UINT)(300), UNITY_DISPLAY_STYLE_INT); + ), (UNITY_UINT)(325), UNITY_DISPLAY_STYLE_INT); } diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 135d3c1..2c37905 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -83,16 +83,20 @@ :line: 270 :message: '' :unity_test_time: 0 -- :test: test_calculate_mines_HeightOne +- :test: test_create_minefield_ValidDimensions :line: 289 :message: '' :unity_test_time: 0 +- :test: test_calculate_mines_HeightOne + :line: 314 + :message: '' + :unity_test_time: 0 :failures: [] :ignores: [] :counts: - :total: 21 - :passed: 21 + :total: 22 + :passed: 22 :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04708719999962341 +:time: 0.047360099999878 diff --git a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c index 5f049ee..de1610d 100644 --- a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c +++ b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c @@ -30,6 +30,7 @@ extern void test_calculate_mines_HeightWidthOne(void); extern void test_calculate_mines_WidthOne(void); extern void test_calculate_mines_NormalCase(void); extern void test_end_check_AllUncovered_NoMines(void); +extern void test_create_minefield_ValidDimensions(void); extern void test_calculate_mines_HeightOne(void); @@ -115,7 +116,8 @@ int main(void) run_test(test_calculate_mines_WidthOne, "test_calculate_mines_WidthOne", 242); run_test(test_calculate_mines_NormalCase, "test_calculate_mines_NormalCase", 256); run_test(test_end_check_AllUncovered_NoMines, "test_end_check_AllUncovered_NoMines", 270); - run_test(test_calculate_mines_HeightOne, "test_calculate_mines_HeightOne", 289); + run_test(test_create_minefield_ValidDimensions, "test_create_minefield_ValidDimensions", 289); + run_test(test_calculate_mines_HeightOne, "test_calculate_mines_HeightOne", 314); return UnityEnd(); } diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index bae99d3..83c4345 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -286,6 +286,31 @@ void test_end_check_AllUncovered_NoMines(void) TEST_ASSERT_EQUAL_INT(1, result); } +void test_create_minefield_ValidDimensions(void) +{ + /* arrange */ + int height = 3; + int width = 4; + char within = '0'; + + /* act */ + char** result = create_minefield(height, width, within); + + /* assert */ + TEST_ASSERT_NOT_NULL(result); + for (int i = 0; i < height; i++) { + TEST_ASSERT_NOT_NULL(result[i]); + for (int j = 0; j < width; j++) { + TEST_ASSERT_EQUAL_CHAR(within, result[i][j]); + } + } + // Free allocated memory + for (int i = 0; i < height; i++) { + free(result[i]); + } + free(result); +} + void test_calculate_mines_HeightOne(void) { /* arrange */ From 2c78623d703d1bcab720ea7e380100d026e70960 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:59:10 +0100 Subject: [PATCH 19/33] Unittest07 --- src/test/test_duellist_spielesammlung_projekt.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index 83c4345..4c7e01d 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -325,6 +325,20 @@ void test_calculate_mines_HeightOne(void) TEST_ASSERT_EQUAL_INT(expected, result); } +void test_create_minefield_NegativeDimensions(void) +{ + /* arrange */ + int height = -3; + int width = 4; + char within = '0'; + + /* act */ + char** result = create_minefield(height, width, within); + + /* assert */ + TEST_ASSERT_NULL(result); +} + #endif // TEST From e86786d7ae0027cb537ff4bec75dd415481302f8 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 11:59:52 +0100 Subject: [PATCH 20/33] Unittest08 --- src/test/test_duellist_spielesammlung_projekt.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index 4c7e01d..58bca44 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -339,6 +339,20 @@ void test_create_minefield_NegativeDimensions(void) TEST_ASSERT_NULL(result); } +void test_calculate_mines_HeightZero(void) +{ + /* arrange */ + int height = 0; + int width = 0; + int expected = 0; + + /* act */ + int result = calculate_mines(height, width); + + /* assert */ + TEST_ASSERT_EQUAL_INT(expected, result); +} + #endif // TEST From 80e53a4f80a7d8d50db009267d072b7d24379f5b Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:00:41 +0100 Subject: [PATCH 21/33] Unittest09 --- src/test/test_duellist_spielesammlung_projekt.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index 58bca44..dec7e3e 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -353,6 +353,20 @@ void test_calculate_mines_HeightZero(void) TEST_ASSERT_EQUAL_INT(expected, result); } +void test_calculate_mines_HeightWidthNumber(void) +{ + /* arrange */ + int height = 4; + int width = 6; + int expected = 6; + + /* act */ + int result = calculate_mines(height, width); + + /* assert */ + TEST_ASSERT_EQUAL_INT(expected, result); +} + #endif // TEST From 8f166a89187e4264a0aacf8bb6e67d19e1959c1d Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:01:45 +0100 Subject: [PATCH 22/33] Unittest10 --- .../test_duellist_spielesammlung_projekt.c | 128 ++++++++++++++++++ .../c/test_duellist_spielesammlung_projekt.o | Bin 13577 -> 15134 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 7929 -> 8510 bytes .../test_duellist_spielesammlung_projekt.out | Bin 101485 -> 102734 bytes .../test_duellist_spielesammlung_projekt.c | 128 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 22 ++- ...t_duellist_spielesammlung_projekt_runner.c | 8 ++ .../test_duellist_spielesammlung_projekt.c | 36 ++--- 8 files changed, 295 insertions(+), 27 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 5502d62..0870ec5 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -739,3 +739,131 @@ void test_calculate_mines_HeightOne(void) ), (UNITY_UINT)(325), UNITY_DISPLAY_STYLE_INT); } + + + +void test_create_minefield_NegativeDimensions(void) + +{ + + + + int height = -3; + + int width = 4; + + char within = '0'; + + + + + + char** result = create_minefield(height, width, within); + + + + + + do {if ((((result)) == + + ((void *)0) + + )) {} else {UnityFail( (((" Expected NULL"))), (UNITY_UINT)((UNITY_UINT)((UNITY_UINT)(339))));}} while(0); + +} + + + +void test_calculate_mines_HeightZero(void) + +{ + + + + int height = 0; + + int width = 0; + + int expected = 0; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(353), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_calculate_mines_HeightWidthNumber(void) + +{ + + + + int height = 4; + + int width = 6; + + int expected = 6; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(367), UNITY_DISPLAY_STYLE_INT); + +} + + + +void test_calculate_mines_HeightWidthAgan(void) + +{ + + + + int height = 6; + + int width = 6; + + int expected = 9; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(381), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index ea923d5802224f2eb6052a34ce6ec8137a5db595..9e88f1f50365bc1b8d2f66cc36fff029cff1b084 100644 GIT binary patch delta 3727 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 A$N&HU diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 08ed359ccc3d29b71ba1153f60bb0218b6e3b336..953d272c27640ea3ce2dd04fe3334a4784be37e7 100644 GIT binary patch delta 833 zcmZXRPiWI{6vy8$O+vbw)^=?(Iw(U&4+WtxJ$Mjp*Ga8&%(+caX6e?fjaySm(_ul; zgPw+evY#i}!GRzs3X+?MAVcRALD=x%&4aRwHx(v@`F>efI`)HK@_paWdoREI-sZ74 zDS43W1GX+H00Wk+_}5(kzX`yDPREC=b!3Kou$B&rkC7xq>tjq@cLQ7vTYnF5Z+$dE zVxs5=_!p)pNwi}aYhxIC6{?dgHy5CMn9h z*YGfL`>D4;VtCeK1DOCE81 S?mMB+8G3FE@3B6h7vMi*Hp2!0 delta 435 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 Date: Thu, 8 Feb 2024 12:15:51 +0100 Subject: [PATCH 23/33] =?UTF-8?q?refactoring=20:=20Zeillen=20abstandverbes?= =?UTF-8?q?sert=20um=20Code=20=C3=BCbersichtlicher=20zumachen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13912 -> 13908 bytes .../test_duellist_spielesammlung_projekt.out | Bin 102734 -> 102734 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 11 ++++------- 4 files changed, 5 insertions(+), 8 deletions(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index c4f8ca157d31be18a2193977aae32e3aa6ada235..ba37b1f72e617bda3092fa706a2069a2a7983c5d 100644 GIT binary patch delta 433 zcmcbSb0vqb=K+X3=GdU?`7;2XSAK{Eh$-V$M_Fu3e&^{K~^Bm2;;^G73G&BxDi6h z`8lPzc?gjZK^c&G52*GWL6CD8eHpJaf=tU0R0DDSpxhJ&;k2UE)cD-YywtSJ)SMIs zMq|bnJ_ZI)9gwm)M}Y1X0UKZp)xjVl3X(B~8qXq>$-rnbnO{mYNewK-1Jqmr)@u!P zH$<-*Trb#i7?%ZN6ht4>L=F+KM`2tZkjd&$Yf6N&fSk>3Qa9NdpDa#LVrKN-oTzHZ z$RZMHkTH3hnhImriD={!UnC!}^%;-5e zlTn?qbn-+-b=H~c3=FR}?`7;2XLOwGEh$;=#P|aVhL6CD8{TZ(_f=tU0R0DAXpxhJ&;k2UE)cD-YywtSJ)SMIs zMsvm%J_ZI)9gwm)M}Y1X0UKZr)xjVl3X(C08qXq>$-rnanO{mYNdqjz1Jqmr)@u!P zH$<-nTrb#i7?%ZN6ht4>L=F+KM`2tZkja`*Yf6N&fSk>3Qa9NdpDj*MVrKN&oTzHZ z$RZkPkU4ppnhG;BXVc`}YVwTwlW(g@@)>aK2EymNIj-+sIC1i1CUrg5NRB3E?#-s^ TpP4qRX-RN0zS?YWEXoW3dgxyC diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 931e9533b13fed55867dd3ccbd4ae50de5e97395..5169aa3c025e69a26e96cd5219c936f28fa1122a 100644 GIT binary patch delta 478 zcmX@Ni0#}Wwh0|f%eGJK@?%mE*?23CiSf*4OXhPg>TMbSF)%RjMmR8BVParloKw!i zz#w=MD8y(7mSLKhAh;8m8zWSdUyhKC5K7L^Db3A8h=d4U0IBzYYR?he590bVUT0)r zV49dAcnie!gK{Ugy%DZAW;_z^z~BiIpK}CgzX(`|F;oeI2-rEsQ1e)XG8q_6V1_e@ zrsk!@CugK4XEQLWfkl0QW>tXAvSx*ur3N<(Y&(q00ybJ3s*!0ThX~lK5ObI&@_?*T zhgwx4lm+B$c7E%~#^fn5dFKh!&AUI>a4@oLw)oS;$XL30_upm4j8B#)88R|6dT&oQ zVKii95s5U&m_EalQH8N<`hHVJc}9cj_e~ik`3yOBbL`=GzMJFv?gbMkO=mM>)MJh2 zXkzBvZfVANoO$~{OGX<}rWY*JA2>3KY!C2f>|tW`+D&%P>t$5ZsB(jS(u!FGt8m2qov|l;-9kL_!2FfYf_KwdV-#2XXxwuQM_* zFip%5yanP0K)I9K-U!#5Gad$qh&fCXc|cZa zLaizh$^vpWJHK^gWAYZ5yz_+V=G~ubI2hSBTl{HaWGvsj`|mPij%PsUGcn9ym>y`x zD7?MKkntH4qtEta6GlTu7STw9%;_^s8C95>Ih&^MHD#1%)SrIWlu?q;fMYihKHtr8 zefPqNlc%$oG3v2Kax^h>Z#Oq%JkGq$iqT4x=@rZL2ab#)+XMU=dzcu#x8Dt9tY=|l S+a4Rnco}H_cEbopSxW$k(|u|H diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 03dadd2..c0b331f 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -115,4 +115,4 @@ :failed: 0 :ignored: 0 :stdout: [] -:time: 0.0499390999998468 +:time: 0.05679710000003979 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index d0a7c8b..df02795 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -216,7 +216,6 @@ void show_minefield(char** minefield, int height, int width) { int field_check(char** minefield, char** mines, int height, int width, int row, int column) { char counter = 0; - if ((row < 0) || (row >= height) || (column < 0) || (column >= width)) { printf("Exception: Outside the minefield!\n"); return -1; @@ -289,13 +288,11 @@ int field_check(char** minefield, char** mines, int height, int width, int row, if ((row - 1 >= 0) && (column - 1 >= 0) && (minefield[row - 1][column - 1] == unknown_character) && (mines[row - 1][column - 1] == 0)) { field_check(minefield, mines, height, width, row - 1, column - 1); } - return 1; } int end_check(char** minefield, char** mines, int height, int width) { int i, j; - for (i = 0; i < height; i++) { for (j = 0; j < width; j++) { // If a field is not uncovered and does not contain a mine, the game is not over @@ -304,7 +301,6 @@ int end_check(char** minefield, char** mines, int height, int width) { } } } - return 1; } @@ -324,6 +320,7 @@ int minesweeper() { scanf("%d", &height); printf("Enter the width of the game field:\n"); scanf("%d", &width); + if (height <= 0 || width <= 0 || height > max_height || width > max_width) { printf("Invalid field dimensions.\n"); return 1; @@ -331,21 +328,21 @@ int minesweeper() { int num_mines = calculate_mines(height, width); printf("The game field is >%d< in height and >%d< in width.\n", height, width); printf("There are %d mines on the game field.\n", num_mines); + // Matrix for the game field char** minefield = create_minefield(height, width, unknown_character); char** mines = create_minefield(height, width, 0); + distribute_mines(mines, height, width, num_mines); - while (1) { + while (1) { printf("Enter 'row column' to uncover (to quit enter '0 0'):\n"); if (scanf("%d %d", &row, &column) != 2) { printf("Incorrect input!\n"); return 1; } - row--; column--; - // Quit if ((row == -1) && (column == -1)) { break; From d2655de9c35a028c1f68993033a5066289997030 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:23:34 +0100 Subject: [PATCH 24/33] =?UTF-8?q?refactoring=20:=20Zeillen=20abstandverbes?= =?UTF-8?q?sert=20um=20Code=20=C3=BCbersichtlicher=20zumachen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13908 -> 13908 bytes .../test_duellist_spielesammlung_projekt.out | Bin 102734 -> 102734 bytes .../test_duellist_spielesammlung_projekt.pass | 2 +- src/main/duellist-spielesammlung-projekt.c | 10 +++++++--- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index ba37b1f72e617bda3092fa706a2069a2a7983c5d..cbb206443264b434d714a98ad06a98a3eddd222d 100644 GIT binary patch delta 947 zcmY*X&ubGw6n+!7>7v1yG-_`%(w=s|@6G$Z_r94!_t5=v*C027dxp`u zN&W&rq`R4z<6jcOO44hzXYfhVYPhZ4`iyy;Fva=%s@+YT74RWBB0`NO3IaY-(1wMY z=Q!0}R(ER5acv-F^6DJGolD|a|Az*ULV>dCfK*yk%1T~KG9c?gJeTeik&5x=J?y>8 z=a#+2X)l_GP?J)!FVfXhxM&DtLiwVy@srPH;5jVftW}FT)(((k5!8d=LvEpSEVqOV z8Y!e@aAZ8jZ8B)1P%MjaDs(;@rm2XOVKrKH-|>L_oWlSckZaOL`($F{?_6=8S4pK` zi~?jZuyHsFnvdmWYSLUG-QX)uWW_c3hU%X}&Sp*DV^3SYyqhMFVbIN|I>S?{!&9mX z=^16A)CBgEj2Ek|3TzeyGHa{$A(jQF+!a}6022x1NV>0`rf9C7?IHM5JNVFE+ZtJVp zN8_n32u31BlxC;+L0!3U5lHLIq;GVZk;#PVMzYYQ zAB3S8OB7V%N?X;VlU*SZMmT z-PmzjcGIz43rLkbJ_T_7EI&5*t^njvpej2cm*#@gp}w@^wbmQX+= ziIf74jK`Qw0c|8o6){eUP8Z`eC6UuiuhR-_AIOh64A6s8n|k5@iH*N8#pkR_>Vq>$ zfC2_Kjz>ZBvA9e{m`kK;Y{k!_;%aO|`A?x_IqkrA?sfukH*Fxps8`N)hsRWh$5bU! z3-|yeN^y_(v4_9avKrKOwrMbBsfKLmSOJ}q7A%^+y(R7C)94>|*_M0kO?UxF-;w{M$b(q>O_5XrB#c5E>?tdh#;tMMZJ4~@yx AwEzGB diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 5169aa3c025e69a26e96cd5219c936f28fa1122a..824d61c2e194704a73a2b781089a3f1d71fcd848 100644 GIT binary patch delta 968 zcmY+CO=uHA6vy8z+qj2FP0Xi_XNe#h`jKGKL`6hsi;7^uLKBm1cWRnQx*;NzD1wNf zamgW&E*Of3c$6MWvqCOK@KO~Np@(`9y!er;r{c`p*+g&qe{bLaH~%-Yv+mkicRhbB zt!)`kW~B7}*SjZvRL_xp05~|Cf=?0vF)K2F=N&7N^VpG$v}fyIIp-}ED}(N=H(Sh? zmkWc+b|CAWdd%9d+C0_`DWN4mUF0Tn$fAsTkHBPo~q~J2Io7;@GV71ABT{R(v` zijY-s4GC)4;W+>muhhcrfG9XRWiVi)BcYlloG_pAe5UkUpdTD zhFzVe(nU@0SG6!!D>SET{bCLR*^-(O$HBz|X>$7K>H7EI-b+o}66}CN$)O6>HOgLQ za|oZ_+z4LDn!THJ3zH~Of`^X;#zPmR+Lj`VhwYYB!($f&T1zuOR z2(>ObBuW$vrgteMNQ7L9;H4@k(p(E({FAGv(wR52iQe{mZ{PQu@6GHs9J>w2v&YI- z+j^2zPI=z;&i*XVkOKfXIvaQ~=jURw6O%DAt1O-M@0qUC5V)-C1`!pDnKD zhLxMH&;0+Zay;wma+x6C34mfzSC7l2l$A%nj+Y~3=T;o9@p^rS@jW;Zk-vZkj}wu8 zs@nh(wavk+=Q8tYs;5_gjAQjW^SXy#(<8Rm_`nP4wp7u&EC&@!^I%lrqgYOkIxSJA zdwD4Cf^X5#vjg%TU*g7%ICLF6#0LiUV~9PG8vMwWO7&wR9AeNZKT@T125`Sp9Shj& zl?6{QoiFB0y#SSq{SU|Tj8K`nkd#Zm=FDlN#uwM8czWZC35 zg%cTL%`6yqil#olYUK1aAk7C1vW`pba0sSpa!6URK*VYON0CbN<71G@$(dU=vyfs} zM|ER~nu970Vzp#sOgboLz?UxQDR~@RJdhfve@j$;{Bd8Y2}=+GrBVYW!=wg#nY9so zdUIoVCC|lf7D9g$ak#)TO&$T@2YXSu*!TKg3NLzcnnga(+I%;!D$D)Qf3BiM8^hS1YV?6>KI0Uy8XWY<= height) || (column < 0) || (column >= width)) { printf("Exception: Outside the minefield!\n"); return -1; } - // If there is a mine at this position if (mines[row][column] == 1) { return 0; } - - // If there is no mine at the position, count how many mines are around it if ((row + 1 < height) && (mines[row + 1][column] == 1)) { counter++; } @@ -291,6 +293,7 @@ int field_check(char** minefield, char** mines, int height, int width, int row, return 1; } +//Überprüfe ob eine Mine getroffen wurde int end_check(char** minefield, char** mines, int height, int width) { int i, j; for (i = 0; i < height; i++) { @@ -304,6 +307,7 @@ int end_check(char** minefield, char** mines, int height, int width) { return 1; } +//befreie anliegendes Feld void free_minefield(char** minefield, int height) { int i; // Free each vector From b4d7aaaed7227c1e59f26430346b7953a2d6af7d Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:34:26 +0100 Subject: [PATCH 25/33] =?UTF-8?q?refactoring=20:=20Die=20Prints=20wurde=20?= =?UTF-8?q?=C3=BCbersetzt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/duellist-spielesammlung-projekt.c | 23 +++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index e8900fe..f6f136f 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -225,6 +225,7 @@ int field_check(char** minefield, char** mines, int height, int width, int row, printf("Exception: Outside the minefield!\n"); return -1; } + if (mines[row][column] == 1) { return 0; } @@ -320,18 +321,18 @@ void free_minefield(char** minefield, int height) { int minesweeper() { int height, width, row, column; - printf("Enter the height of the game field:\n"); + printf("Geben Sie die Grösse des spielfeldes ein:\n"); scanf("%d", &height); - printf("Enter the width of the game field:\n"); + printf("Geben Sie breite des Spielfeldes ein:\n"); scanf("%d", &width); if (height <= 0 || width <= 0 || height > max_height || width > max_width) { - printf("Invalid field dimensions.\n"); + printf("unpassen form gewählt.\n"); return 1; } int num_mines = calculate_mines(height, width); - printf("The game field is >%d< in height and >%d< in width.\n", height, width); - printf("There are %d mines on the game field.\n", num_mines); + printf("Das spielfeld hat eine grösse von >%d< und eine breite von: >%d<.\n", height, width); + printf("Es gibt %d Minen auf dem Spielfeld.\n", num_mines); // Matrix for the game field char** minefield = create_minefield(height, width, unknown_character); @@ -340,9 +341,9 @@ int minesweeper() { distribute_mines(mines, height, width, num_mines); while (1) { - printf("Enter 'row column' to uncover (to quit enter '0 0'):\n"); + printf("Geben 'vertikale horizonatle' ein um zu spielen Bsp vertikal 0 und horizontal: 0\n"); if (scanf("%d %d", &row, &column) != 2) { - printf("Incorrect input!\n"); + printf("Falsche eingabe!\n"); return 1; } row--; @@ -353,11 +354,11 @@ int minesweeper() { } // Check field boundaries if (row >= height || row < 0) { - printf("Row must be between 1 and %d!\n", height); + printf("höhe zwischen 1 und %d!\n", height); continue; } if (column >= width || column < 0) { - printf("Column must be between 1 and %d!\n", width); + printf("breite zwischen 1 und %d!\n", width); continue; } @@ -365,14 +366,14 @@ int minesweeper() { if (field_check(minefield, mines, height, width, row, column) == 0) { // Show the mines show_minefield(mines, height, width); - printf("Row: %d Column: %d was unfortunately a mine!\n", row + 1, column + 1); + printf("höhe: %d breite: %d war leider eine mine!\n", row + 1, column + 1); break; } // Are you done? else if (end_check(minefield, mines, height, width)) { // Show the mines show_minefield(mines, height, width); - printf("Great! Solved correctly!\n"); + printf("Sie haben es erfolgreich gelösst!\n"); break; } // Show current field to continue playing From 15280f738df228a24286781bd0d5d304e6062404 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:35:42 +0100 Subject: [PATCH 26/33] =?UTF-8?q?refactoring=20:=20Es=20wurden=20=C3=B6=20?= =?UTF-8?q?durch=20oe=20gewechselt,=20u=20durch=20ue.usw?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/duellist-spielesammlung-projekt.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index f6f136f..bac07f6 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -331,7 +331,7 @@ int minesweeper() { return 1; } int num_mines = calculate_mines(height, width); - printf("Das spielfeld hat eine grösse von >%d< und eine breite von: >%d<.\n", height, width); + printf("Das spielfeld hat eine groesse von >%d< und eine breite von: >%d<.\n", height, width); printf("Es gibt %d Minen auf dem Spielfeld.\n", num_mines); // Matrix for the game field @@ -354,7 +354,7 @@ int minesweeper() { } // Check field boundaries if (row >= height || row < 0) { - printf("höhe zwischen 1 und %d!\n", height); + printf("hoehe zwischen 1 und %d!\n", height); continue; } if (column >= width || column < 0) { @@ -373,7 +373,7 @@ int minesweeper() { else if (end_check(minefield, mines, height, width)) { // Show the mines show_minefield(mines, height, width); - printf("Sie haben es erfolgreich gelösst!\n"); + printf("Sie haben es erfolgreich geloesst!\n"); break; } // Show current field to continue playing From 7af65b97ce7af7b8eeba5886d98b94afc1446151 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:46:23 +0100 Subject: [PATCH 27/33] refactoring : Genauer defefinierter bezeichner(eindeutiger bezeichner) --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13908 -> 13924 bytes .../test_duellist_spielesammlung_projekt.out | Bin 102734 -> 102734 bytes .../test_duellist_spielesammlung_projekt.pass | 118 ------------------ src/main/duellist-spielesammlung-projekt.c | 8 +- 4 files changed, 5 insertions(+), 121 deletions(-) delete mode 100644 build/test/results/test_duellist_spielesammlung_projekt.pass diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index cbb206443264b434d714a98ad06a98a3eddd222d..4c746690c278380c87d9d4cc48156adc053b9453 100644 GIT binary patch delta 2486 zcmZuze{2**6rQ=>!4+HRU9Z2OrBmQIj+9D^CFUf6*g_yEHV{-&gzMe3yRzLadwU!- zF>4SF#DJcoq6SScmXH83@dzkJBq?Yx@{brH0mVfAXbg#x7{vsPZ)SGq#CS=Y?|tvR z@BNtBz5C9%X;iMo4Y3@NQPbiO`V*LVuJ#$Gd{1)su#&5DN-S@G4&g z=Quvz-+Oak&zvAo7W=*?iQj!aLU1c+xRJ8J&keV4I>AKF7X}uEDohUF{||QrqLMq65?<>vc-9 z@VCkyKb6Y?ra6)u(Wx;=4UVa9rcgW!9hKt;Y^pmlbp3xr^X5nzbWAd6*~4Ur7REo+ z45tI~d(!_>CYqaexHu(4wncg69hOO!#IfuDSk*AlrsrG5qr=whTsS?8tm8L%X3&?-6?#a6s})UF?kvO z8}!exzNT7txxj(q)<_6A?3?{j+bWdJr=uCm$Pb%kW<#Wz$FK3yjR=2A@H%`2u34a{ zMdotzNzcrp+CiJrExg%5xH(ybyYcp^2(51CVTaDcgAx-0-ChQY!8669c&CA4FsdWG zm`$5r=OzU8S2aRAMeZZex6DnbTv6ONgHlT71&ZOA7}Phbxbi%&j1zsXY>c3K(d!mC zw#+t!uklt=?qr0%n8cg@5_B3w)7RwCs6o{AtYCwfKx9GH22s_ssv5<1J*%eCU#>^Q znle`2bf}H+^^n-7g{J2;s{jjh)do)=1IbsxjSnTEA=%1lzZFsZw6{H3+_S<>F!3kS zV>H3Q9@fzGte$gheIW11qsk#X)&WJH7mNOk7n$pFJa%7|vHPlcR=7dj56`ONHIMi; z?X;QQqEUTFa}=vJ3AUhT9Ziv0RG+bF+G|IghKuk)UVS%Qnd73b44jDE^+8zx$#Fd^ z*jUgVO^2&{Q0}sShB&mh>7r6F{A1;rWCm=J&bpL+XQ& z8bg;9S^_7jnfVkg-mAHz@BO#qCqv5yc%-+*!qq19D}#%Zj|J0)GP} z%l)amca^su&R8}*1CUhdP~0Lwav%Io$v91MZ^HX(kr?Foas|%=l7SZi$>b}FyAJ3f zk@BPp^^#PJy zZUiL99#x#HxL*|atKzyNA~y*4B~_|ka3bjPM-Rizg`Yq0Sp&D1za+{`KQR2=RAvld zQn1J}vkMsh4lgr%fZ<;WW#$cF&M2nCp*tO3kbirF2UXw$?6IzGfoXx_qcL{AYZTuo JEn8Gq@ejVr|LXt% delta 2425 zcmaKtZEO@p7{_O}d!?;M>0PhA9&KR?)a&t53m8B&npR6GfgqGb)F$P)-F8>*cJXen z*J^Mz)I?(lIY&dpi_ipERKyVYKx~8$1T|JdAjU|Hm=Ir{nc15YW4u7~ zpWi&s|9NJ1c6K&7ldRs1??LQ$EMMJReJp^`d5lm;eueFu1+h0j8TIXGK&UZ)VKH8l z|0U{sWD!DN(N?^$`nrnH5R9(SUc4ChQ4>dThURh9cPNU`wc@9ET&>@~uL{3VxqqJ@ zyK_#kLN^kVBZBXn{Ug3X3n8$k7vxwy~7tcUP!*<%qT5(5DjuR5+ zYXZ-{v>tcb$bg+3)iqcG?6I>_x!a@Fh4%O5OLBKJIf9i!r%J%_StBD=1IfO4Y5C}?c*Cb&FuJE zrtY$vy35WRRfYL;_eOqZ{$9yE4aa;)Tn3UF5l;DQDWQgFw58rX%*wq9M}b{VxR8Lo z7Q1*@I3lqSZ=^QmOvf-Sgb#~d8f@l|<89IOu9g$vv>u$+fDh}d;Pr)CZ^6t4m|^sY zphoK*KhTwo!loRhXIk3v%HqwI7kzUl;UX{nW{YEsmMb*|QdC?yTse}X?=HEDj}|A| zKdNYD*{Hj=>Sd*8t}k`QuYw~1GzIH=iw?vV<6fGJEySPEL-2PSJsw-A)Ya0f*Cs zOLiF)YczyzNp@SZdGPR8A>_hzBS>M>3`(RdldMa!ji4X}GIq<^5jlHEvVvrvNOnrH zi;{f<$`$3VNqAERR>0#F2&llhZSVsZkRz8c#;mR W+N1n{^W7mjv+6l~y|{ICL&e`zAK0h> diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 824d61c2e194704a73a2b781089a3f1d71fcd848..3fd72df6f77208fbfe3086e818e650b55dde021e 100644 GIT binary patch delta 6198 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 delta 6221 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 OA3{3cnQMYSgZ~dM*)`$- diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass deleted file mode 100644 index 43b42bd..0000000 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ /dev/null @@ -1,118 +0,0 @@ ---- -:source: - :path: src/test - :file: test_duellist_spielesammlung_projekt.c -:successes: -- :test: test_coinflip_x_starts - :line: 11 - :message: '' - :unity_test_time: 0 -- :test: test_coinflip_o_starts - :line: 23 - :message: '' - :unity_test_time: 0 -- :test: test_vertical_win - :line: 35 - :message: '' - :unity_test_time: 0 -- :test: test_horizontal_win - :line: 49 - :message: '' - :unity_test_time: 0 -- :test: test_diagonal_win - :line: 62 - :message: '' - :unity_test_time: 0 -- :test: test_valid_move_and_switch - :line: 76 - :message: '' - :unity_test_time: 0 -- :test: test_invalid_input - :line: 92 - :message: '' - :unity_test_time: 0 -- :test: test_valid_input - :line: 106 - :message: '' - :unity_test_time: 0 -- :test: test_invalid_input_negative_row - :line: 121 - :message: '' - :unity_test_time: 0 -- :test: test_invalid_input_overflow_column - :line: 135 - :message: '' - :unity_test_time: 0 -- :test: test_NumberOfMoves_returns_correct_number_of_moves - :line: 149 - :message: '' - :unity_test_time: 0 -- :test: test_BoardFull_returns_false_when_board_is_not_full - :line: 163 - :message: '' - :unity_test_time: 0 -- :test: test_BoardFull_returns_true_when_board_is_full - :line: 176 - :message: '' - :unity_test_time: 0 -- :test: test_CurrentPlayer_returns_correct_player - :line: 189 - :message: '' - :unity_test_time: 0 -- :test: test_FieldEmpty_returns_true_for_empty_field - :line: 202 - :message: '' - :unity_test_time: 0 -- :test: test_FieldEmpty_returns_false_for_nonempty_field - :line: 215 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_HeightWidthOne - :line: 228 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_WidthOne - :line: 242 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_NormalCase - :line: 256 - :message: '' - :unity_test_time: 0 -- :test: test_end_check_AllUncovered_NoMines - :line: 270 - :message: '' - :unity_test_time: 0 -- :test: test_create_minefield_ValidDimensions - :line: 289 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_HeightOne - :line: 314 - :message: '' - :unity_test_time: 0 -- :test: test_create_minefield_NegativeDimensions - :line: 328 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_HeightZero - :line: 342 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_HeightWidthNumber - :line: 356 - :message: '' - :unity_test_time: 0 -- :test: test_calculate_mines_HeightWidthAgan - :line: 370 - :message: '' - :unity_test_time: 0 -:failures: [] -:ignores: [] -:counts: - :total: 26 - :passed: 26 - :failed: 0 - :ignored: 0 -:stdout: [] -:time: 0.05033430000003136 diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index bac07f6..fd1ccd8 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -8,6 +8,7 @@ #define unknown_character 'x' #define mine_character '@' + int checkAge(int age) { return age >= MIN_AGE ? 1 : 0; } @@ -138,16 +139,17 @@ GameResult checkGameResult(const TicTacToeGame* game) { return draw ? GAME_DRAW : SUCCESS; } + //Nach eingabe zurberechnung der Minen anzahl int calculate_mines(int height, int width) { - int num_mines; + int number_mines; if (height <= 1 || width <= 1) { return 0; } else { - num_mines = ((height * width) / 4); + number_mines = ((height * width) / 4); } - return num_mines; + return number_mines; } //Zum erstellen des Spielfeldes From b8387c6e9bb898c7565ad2b7af01c7a4de5a53b9 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:49:44 +0100 Subject: [PATCH 28/33] =?UTF-8?q?refactoring=20:=20Makierte=20Kommetar=20b?= =?UTF-8?q?egr=C3=A4zung=20zwischen=20dem=20Spiel=20Code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../out/c/duellist-spielesammlung-projekt.o | Bin 13924 -> 13950 bytes .../test_duellist_spielesammlung_projekt.out | Bin 102734 -> 102734 bytes .../test_duellist_spielesammlung_projekt.pass | 118 ++++++++++++++++++ src/main/duellist-spielesammlung-projekt.c | 2 + 4 files changed, 120 insertions(+) create mode 100644 build/test/results/test_duellist_spielesammlung_projekt.pass diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index 4c746690c278380c87d9d4cc48156adc053b9453..c49dce172f7455af5a55a0aeb2d259bc43b5777c 100644 GIT binary patch delta 2940 zcmY*bZERCj7(S0loWvowmzCL14dYoPdIMVTuog&! z#Q28@JbJ~Mh9~5iZE;~zIO=?vRiJ4zJ;gy zkh(#n{-sj47^&_?INRamJv}GOC)|FJ&74F}TO~ONvud4~TG!6bfn6aCy_36sz*sin zpQc~P&5owiP}f~i8M!X2JcH;qu8eYBhO&DWWFse0u3M5C%&Mn`t>ez&*hI-i79uIY~ zSx;R>F%MgS??d>~bhX%et$padfHhS+XhEjEdXcGM98a(8=NcQSIf+L|P3=B9zduY& zW@_DO?Mr6feK=)y^BaY<7TR7lwG~*RU*wyyv#LQ&UbcRf4h z^O%YX*%eT(g`-(FcW%Y`HWQ|fF85dMs1W4)~RNP_3{VTb0>=ctd8@L)s3U+4P^~b4x z2?HuaeJhy(S_Cwo+*h0nCz|v&DD=ES8j#F*PjR0p?wsO&Qpkd{LFzexkgKCyvm#e1 zG^EfgG7xdc6!)RxtT-#AU@4GnrdDx&g*1g;SLhVbJehnk^IhXzs`Do?#Z8U#8K1Sd zvH3f~9Mc1azl6*&8W{eDG{@`)!(Ywjm;+$=i{Bh`1Pp%_l}tk-G?L&2(GMs>a_BhQ W*nG&s-=kNu>&<=iMy6|7Y0iJ>QQZ3g delta 2882 zcmY*bdu)?c6u-CYX7_@1blqy#b_}<%g)!LJLJ-E7GQw*-G8vF5bX}o^uN#)mF${hI zQR5#D>Ia!7g@l+b67UgA0%n3oB@? zo7toY^EcbVSbO|tRc2>7V;2k$_vKu%GByC~MxD{d%lR53%&YhwBhIU`MynXRRhK-& zcUY5)v&M6{FFD!XZb@#NRAAvh8M}+#;X}z;&ejZlKEH9WwC507UJmhw&Ea zvBWppGyiXP6-N68(%!X&fj+H2(wk;F?4=@pi8)-ei}~{vd>r$(#6$Kt3^U%85@$uh-kuGCP%yBSVfJD!|K>BcLux&Y z!j)DPY02y<(<-HPbD$+|bI7SG9ZNh!?5}ARl%(2g5)N0OufI1Ij52=NXm-1n zoIHln`_NmSs77*?_GBupOmtFIXNg-?9@Db9Fu7C8qq#7*Q^pauTOXMYxm~h-V?s{W zJ#wGi$bE9AWh<7eZd!Rld^9B<^<#}f!SLo#jM$J%vIF6sScu3TraJ@Cpg$Je5DE7N zWs4af7TNb;UmTZZ1<+>Iz+shusd<@}wPYY13x%;Ehco4l>vGGLcty=&W9bN#=0K?l zI-<;1%`%w>2g=9V;1YB~(IL-u#LpBYdUVLRSX!zN30DtjFaCKVNd-xVC2kgET2{C0 z%s!)xquk8d{>YWH2^{<9Adp<6Iji2xT|~gr2J>>c^Ser6eY4r5_>q z2SiMSUliMG?DrHopHcphClj^Jf?JfV8)F`i-Yr~DV^jW$rgL5IAqOi59B%{+iL0_lvHn_a){gLiq zbj7CSeNP3qGrm-~zQ^o4r08SWsSYenbs(Ywmnn^y=PH6*%_PfBVb32R>ja5;w<}VE z>3yU>8V%~bv6Y&CP@J4ayU_6S2$nk|@dBk=WTs=zh<|HP6orBh$ikfRYuVp!8EOCuxTE7BvhI_-YuwM)B42rG5c!k^qNTCj28=ebl z6I7UKJRic@jIZcxmGQRE!KWJMeC6C@T=)5Sv0*E#nNc9Bn27IWe0icw?zIJ*p`R-} z;v>8~QR0_mvb(I(l0SsUQtETbI9Ps^=OpJ(+08BCaPsqq;#QAWco$5tJ!fgn&s={l z&x#FJ2I_UR<#}VUdJ3;M4psa3TgH3%Z8mJ zmF^$%-XX6Ow~Q*<4Wv}26W0Kw`XR1I6&E7zARey`aw5ldf@gtL;AcQ;@Hlaofy5Q! zV80M|o#Jj0cbnqMu(6b01(4EPN8A%YqG;p5G^hRz(c=_)gSeYOD)n9BECngaRX{4u z8X(n&oy6(H{Z8DU#5LOGSSvQroaBPq*SJ1{9#x{OTy`GF36#Yy5_gNZ0$g*-TS2IU zPyk4&9477!;>L*kn$R7EbfnA0Euscj1F0ms$JZ(8nIBs%$mf)0&*Mc8>{Nwe8`B@@5>Z#!wU`Gu$f;;h8v19{sZq**aH9n diff --git a/build/test/out/test_duellist_spielesammlung_projekt.out b/build/test/out/test_duellist_spielesammlung_projekt.out index 3fd72df6f77208fbfe3086e818e650b55dde021e..5b310facdbf1861c2ff9f180203e4990471364d3 100644 GIT binary patch delta 6013 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 delta 5985 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 MIN_AGE ? 1 : 0; @@ -139,6 +140,7 @@ GameResult checkGameResult(const TicTacToeGame* game) { return draw ? GAME_DRAW : SUCCESS; } +/*--------------------Minsweeper--------------------*/ //Nach eingabe zurberechnung der Minen anzahl int calculate_mines(int height, int width) { From dd1634f199a3652cf76de5d20c88593f8a5d33db Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 12:54:55 +0100 Subject: [PATCH 29/33] =?UTF-8?q?refactoring=20:=20Entfern=20und=20hinzuf?= =?UTF-8?q?=C3=BCgen=20von=20weiteren=20kommetaren=20um=20besser=20die=20f?= =?UTF-8?q?untionen=20der=20einzellnen=20funtionen=20zu=20erkennen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/duellist-spielesammlung-projekt.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/main/duellist-spielesammlung-projekt.c b/src/main/duellist-spielesammlung-projekt.c index 581eb41..62c5597 100644 --- a/src/main/duellist-spielesammlung-projekt.c +++ b/src/main/duellist-spielesammlung-projekt.c @@ -226,7 +226,7 @@ void show_minefield(char** minefield, int height, int width) { int field_check(char** minefield, char** mines, int height, int width, int row, int column) { char counter = 0; if ((row < 0) || (row >= height) || (column < 0) || (column >= width)) { - printf("Exception: Outside the minefield!\n"); + printf("Auserhalb des Minenfeldes!\n"); return -1; } @@ -303,7 +303,6 @@ int end_check(char** minefield, char** mines, int height, int width) { int i, j; for (i = 0; i < height; i++) { for (j = 0; j < width; j++) { - // If a field is not uncovered and does not contain a mine, the game is not over if ((mines[i][j] == 0) && (minefield[i][j] == unknown_character)) { return 0; } @@ -315,7 +314,6 @@ int end_check(char** minefield, char** mines, int height, int width) { //befreie anliegendes Feld void free_minefield(char** minefield, int height) { int i; - // Free each vector for (i = 0; i < height; i++) { free(minefield[i]); } @@ -323,6 +321,7 @@ void free_minefield(char** minefield, int height) { minefield = NULL; } +//Start des Spiels int minesweeper() { int height, width, row, column; printf("Geben Sie die Grösse des spielfeldes ein:\n"); @@ -338,7 +337,6 @@ int minesweeper() { printf("Das spielfeld hat eine groesse von >%d< und eine breite von: >%d<.\n", height, width); printf("Es gibt %d Minen auf dem Spielfeld.\n", num_mines); - // Matrix for the game field char** minefield = create_minefield(height, width, unknown_character); char** mines = create_minefield(height, width, 0); @@ -352,11 +350,10 @@ int minesweeper() { } row--; column--; - // Quit + if ((row == -1) && (column == -1)) { break; } - // Check field boundaries if (row >= height || row < 0) { printf("hoehe zwischen 1 und %d!\n", height); continue; @@ -366,21 +363,18 @@ int minesweeper() { continue; } - // Did you land on a mine? if (field_check(minefield, mines, height, width, row, column) == 0) { - // Show the mines show_minefield(mines, height, width); printf("höhe: %d breite: %d war leider eine mine!\n", row + 1, column + 1); break; } - // Are you done? + else if (end_check(minefield, mines, height, width)) { - // Show the mines show_minefield(mines, height, width); printf("Sie haben es erfolgreich geloesst!\n"); break; } - // Show current field to continue playing + else { show_minefield(mines, height, width); } From 7cc53f1b33be1d88620d42a927a282ab938adce4 Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 13:03:27 +0100 Subject: [PATCH 30/33] Unittest11 --- .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../out/c/duellist-spielesammlung-projekt.o | Bin 13950 -> 13942 bytes .../c/test_duellist_spielesammlung_projekt.o | Bin 15134 -> 15529 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 8510 -> 8657 bytes .../test_duellist_spielesammlung_projekt.out | Bin 102734 -> 103305 bytes .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 10 ++++-- ...t_duellist_spielesammlung_projekt_runner.c | 2 ++ .../test_duellist_spielesammlung_projekt.c | 14 ++++++++ 9 files changed, 87 insertions(+), 3 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 0870ec5..903028f 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -867,3 +867,35 @@ void test_calculate_mines_HeightWidthAgan(void) ), (UNITY_UINT)(381), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightWidthRoundUp(void) + +{ + + + + int height = 3; + + int width = 5; + + int expected = 3; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(395), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/duellist-spielesammlung-projekt.o b/build/test/out/c/duellist-spielesammlung-projekt.o index c49dce172f7455af5a55a0aeb2d259bc43b5777c..92e72438afe92d5a2478722c49b401d1727dec99 100644 GIT binary patch delta 600 zcmeyD^DT$dhmo5B1ddJQRAvmBsGHBoF>$UoYlSESgVV&b%8bbqKdQ6lC^0a+nk>tx z%+>>B{nMZ9#;C+tGC7k`opHhBiHz#3N7NY@I5zKPe8y*N12pUf$i!aP7o9FDEXP?? z(qTeCb`Ff)>-q#HJ^7k|CgY?@f)*lcV6xq=U!bxdCi@7c>PRrcO}zt@;OKRI0F}># z$u$39DiH(PkU#mZU@&9DWJ4hh##xi2gz_18Og<&##rR~hsBpEEV`*_}QAT1;l0r&q zv4U@AUTR)iY7UUCxOtQC5!QNF#(zLJoaJL+xWdH1z&NLzg@Hj37#IwUZeSUvi3x(N z$lMsAqWp4%Y=ls9eokp_9zrBUPzIzv0IEGl5ES5yA&l374riK}A*cr8hC;cMze)-l zTQjx*?e_$U&p86LUj(ef8mfdr1neAZsCg_xnGB3Jo2{iL^4LyfU}9lp z?__&*QORf~BVmqaj;Dr9DnNR-5pz686EkN7v-IX%^=xiN_Q{IIqMP3tO<)E9(1VfS delta 604 zcmeyC^Dl?fhmo5B1kO$5RA!8ssGH9yFmbLnYlA2QgV)5f%8c0)KdQ5qC^0a6nk>tx z%r*tcVl$ZR#;C+tGdYt{opHtFiHz#3XVe)O1UBzwe8y+&0yOLe$i!aP7o9FDEXP?? z@?k-q#HJ^7k|CgZG0f)*lMV6xq=U!bx-Ci@7c>L@V6O}zt@;OKRI0F^I< z$u$39DiH(PP(JytU@&9HWJ4hh#zm8(gz^~=Og<&##rS5jsBpECYejNuK}lwQo|S@s zX-RQrN~%IhMyf(?W?pJqW@=7~BE#lY!beyc-6rQtO4hqG{sX#*X<~vPE0AV{abtvv z^2-t22%+TsoYLGpgh+^>3`l(-RC|sfD3BS$7_S2z%QP`VPz}TlhjLRGgwu*rQ{&-o zU|_UiY~f>I@SMyp#V>0ERmLC!j1!O)#7QhdnGB4!n~kL=^4LydU}9lp^*R%WqCq&*o<2-+a+%DKh{(ftFJM diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 9e88f1f50365bc1b8d2f66cc36fff029cff1b084..893fdbda31c5836f8b4540cbf4c9e532f5ce3f2c 100644 GIT binary patch delta 3077 zcmZXWd2Ccw6o=1!Ed!nD%yh8r&~{n|y093ewJp#V>;^7S6dFX9Doq3|-Dub%6&Z+N zN@SVgl7NDxpb!zz;<$i7#4QkLh~N?zqQ!&+5lKOV{y|dDduQhN2lJA7^WE>9bMJfa z-nVqFI<(qZqa0*zpFT`f9ddd-ekW0nB5D|Id72t3Zc;Zx`?AM$4;0S_Cc=xCvYTI{>bQPAZJO%R z*V2~dR`IZ@ElXM#Enc#yc_Ar}GK~?MW69;Dl3D0A=@aa=?BjpqkqkY|>($?<4^f}% zTj@>4D5svE(X4jra~bXGuCDgYGiJK zJcVQtvGJD@;{Z z?cbnmelW>F&tQ_gjZBs1vPz~m8Rhu*Gsz&AnWUtjNlM1@T_&!MN!(_*6L5dPrShF1 zc|1!rntu-ZkoSK6+2|CnKYGZLy&TWCsF5$VgjX|(>j3Qp9R!(^BNcza-2*xJT1qeJ zpjk{-MSz}%Tn1VX3WC05l0h!RT?O@l%&C*%%J}k2#Z)G7b3yGE@%cOG2og^sd>-@@ z=sIW^Pl)!gX%#`k+%u757g`6>o47;@Qg_}IiNz&DkjO>2)6_D7U%=e?@Us0 z8?GPZ`AdztddTyIaoJr{s%289srf_o2i3DI7-TcA|_u8|YTWs>0vLGux9jJSYju6-&>=1}G@*?NKs)pJ{D9jFU*2Gna3-+x?8kq(n72Q(Sf0O|m} z13Cw~4jRPoOuyChNKg%^4HPu^qe>FHA-@6jfs*(&D|z{#8K5>$5Y%l_cu_&2!OtTi zJHLs~=xv1=1I%xesrvoGmmer(XKwuNr8s4Nkv8eWMQM6Ykxxz6D~qyo>mnKaEaeRI zyOU4xzO6x@F3MKR_0^*6z}iSYKVdlE{1nZ+FPo?%l4G6_cgWkW7}FhNPR5v?81sWZ zQS7O^7UTP3On;1Vm>0p?qDSS6F(U@(zTzxZ5_XSEh}U;Yh7F8-A#2aL*}A3l*#B}V BUr_)6 delta 2846 zcmZXWeN2^A9LIm>;r;Dipd0dXfh!kO@&zO=pk#tcG35_aEHpQ$1VxlU7)@7u^bZy_ zU$`Eoe^~fJG^0`Ktu;4RtTLJ5R$0?tM`p`5YZZbVu3_j z_)irjuP9nvCL-AOb9J`=*4*gPJfhNKouhK%2MnT1{I#}NKdSPKrwjBpHODwwpbx3M zlv5Ez9~Ka;EtVeKf%ED@qQ2>9P(EGbeBT&P4BT}N$LP%TRO4){UXB# zzAvLkrRrBQI@BJ0C!yFITs!)$*?kxC>?=5XdYkPA`YxDNaq*9b+41a?yyGXfM z=yh2Y#&-#Ne^$9#rO#)z8D|r9iF>>9=wt5P%G8S%RI3_2s%$qaKGe0FNmii_?s2$5CaL|NsoJic26_1( zLvC&jljQX>nKH<0j57a|OftxqOj0t#Bqc@sD;BqjN!&iTb8x&PRLGwMdY9W={zTIl zw+n4I#o;2GwwS!E67FFV*$Wx~4S{}Ol8T#fcR=yHZqiEzsE$c0o`TyJBr}0_LH2<@ zVUm)|aMwT)ysR>ak4f@Y!mR^61L_2gFiFKZ%bE5vOd$Ll=r$5ldHJQ}0Z=PwkVz&p z3K|1hTPL*+-W6@^SPTsdeX zqOEY|^T1;WzYRAAx{l~HoZ>eI86=BIrn(4ZJp<<2cg*t(M%{e;NS;TW$;VGsFzlix z&>qln&^TxcM8OVSln+`7+6w9eodQiTnbvGvbOSP$Pdjn*Ky{!FP(SE2=yTAYpkzKD zrN3g(8c>G=*l$tby^;qF{cmY%l=Z$)t5bY07R2)zYF&InQiQVJ(pv2A_cm!d;Pa|{ zeZ}Y12Yj&!{5<4b>#a=b6TS>Rr_AkK73_zfD;)FstM5102NgdgSXu9B?t6Q+xiOeS zCK)qxoTKEX-Wcm&?30*TVdCn7R8u)7Y}Jx!Ins)mT$c4s@2s OMe6SI_4;<@ng0NbC@?<& diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 953d272c27640ea3ce2dd04fe3334a4784be37e7..b712a3ac2e5c56c7c956899b51273d43b412416e 100644 GIT binary patch delta 531 zcmdnzbkUjDhmnT?1h$DYFt|hDZ^k{7cQUH8J`iGH zDA@dz@iw#MaTgVi2A~ok&9Ve&+;J8akS#AtH}7Q?XPKPBDLr{UCo6kUeraAxXu;&m zoTnJyZ=T2H%~GHG2dM5A5Q_q}G0qV#D$R>8Ni8m6VDyXyiq--#IE*nrKmKacT)f*v!fRD5eA!7jyQ_PtJ~a0je*`uVi2}(EdG%vHH(lsxI0RRCYe_a3o delta 416 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 delta 16270 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 Date: Thu, 8 Feb 2024 13:05:29 +0100 Subject: [PATCH 31/33] Unittest12 --- .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../c/test_duellist_spielesammlung_projekt.o | Bin 15529 -> 15924 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 8657 -> 8808 bytes .../test_duellist_spielesammlung_projekt.out | Bin 103305 -> 103876 bytes .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 10 ++++-- ...t_duellist_spielesammlung_projekt_runner.c | 2 ++ .../test_duellist_spielesammlung_projekt.c | 13 +++++++ 8 files changed, 86 insertions(+), 3 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 903028f..3da31fc 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -899,3 +899,35 @@ void test_calculate_mines_HeightWidthRoundUp(void) ), (UNITY_UINT)(395), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightWidthNoRound(void) + +{ + + + + int height = 9; + + int width = 9; + + int expected = 20; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(409), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 893fdbda31c5836f8b4540cbf4c9e532f5ce3f2c..8a5e4e5770b83fc68c17e0c69716f6d33f81e814 100644 GIT binary patch delta 3211 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 delta 15956 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 F{{br8kE;Lx diff --git a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c index 903028f..3da31fc 100644 --- a/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c +++ b/build/test/preprocess/files/test_duellist_spielesammlung_projekt.c @@ -899,3 +899,35 @@ void test_calculate_mines_HeightWidthRoundUp(void) ), (UNITY_UINT)(395), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightWidthNoRound(void) + +{ + + + + int height = 9; + + int width = 9; + + int expected = 20; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(409), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/results/test_duellist_spielesammlung_projekt.pass b/build/test/results/test_duellist_spielesammlung_projekt.pass index 9051b5a..b0b51f0 100644 --- a/build/test/results/test_duellist_spielesammlung_projekt.pass +++ b/build/test/results/test_duellist_spielesammlung_projekt.pass @@ -111,12 +111,16 @@ :line: 384 :message: '' :unity_test_time: 0 +- :test: test_calculate_mines_HeightWidthNoRound + :line: 398 + :message: '' + :unity_test_time: 0 :failures: [] :ignores: [] :counts: - :total: 27 - :passed: 27 + :total: 28 + :passed: 28 :failed: 0 :ignored: 0 :stdout: [] -:time: 0.04867079999985435 +:time: 0.050488599999880535 diff --git a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c index a2a4f25..2f16477 100644 --- a/build/test/runners/test_duellist_spielesammlung_projekt_runner.c +++ b/build/test/runners/test_duellist_spielesammlung_projekt_runner.c @@ -37,6 +37,7 @@ extern void test_calculate_mines_HeightZero(void); extern void test_calculate_mines_HeightWidthNumber(void); extern void test_calculate_mines_HeightWidthAgan(void); extern void test_calculate_mines_HeightWidthRoundUp(void); +extern void test_calculate_mines_HeightWidthNoRound(void); /*=======Mock Management=====*/ @@ -128,6 +129,7 @@ int main(void) run_test(test_calculate_mines_HeightWidthNumber, "test_calculate_mines_HeightWidthNumber", 356); run_test(test_calculate_mines_HeightWidthAgan, "test_calculate_mines_HeightWidthAgan", 370); run_test(test_calculate_mines_HeightWidthRoundUp, "test_calculate_mines_HeightWidthRoundUp", 384); + run_test(test_calculate_mines_HeightWidthNoRound, "test_calculate_mines_HeightWidthNoRound", 398); return UnityEnd(); } diff --git a/src/test/test_duellist_spielesammlung_projekt.c b/src/test/test_duellist_spielesammlung_projekt.c index cd8b858..283b843 100644 --- a/src/test/test_duellist_spielesammlung_projekt.c +++ b/src/test/test_duellist_spielesammlung_projekt.c @@ -395,4 +395,17 @@ void test_calculate_mines_HeightWidthRoundUp(void) TEST_ASSERT_EQUAL_INT(expected, result); } +void test_calculate_mines_HeightWidthNoRound(void) +{ + /* arrange */ + int height = 9; + int width = 9; + int expected = 20; + + /* act */ + int result = calculate_mines(height, width); + + /* assert */ + TEST_ASSERT_EQUAL_INT(expected, result); +} #endif // TEST From 0ce248de941129f2ac5dc325b16050a5c98628ab Mon Sep 17 00:00:00 2001 From: Daniel M Date: Thu, 8 Feb 2024 13:07:09 +0100 Subject: [PATCH 32/33] Unittest13 --- .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../c/test_duellist_spielesammlung_projekt.o | Bin 15924 -> 16309 bytes ...t_duellist_spielesammlung_projekt_runner.o | Bin 8808 -> 8953 bytes .../test_duellist_spielesammlung_projekt.out | Bin 103876 -> 104445 bytes .../test_duellist_spielesammlung_projekt.c | 32 ++++++++++++++++++ .../test_duellist_spielesammlung_projekt.pass | 10 ++++-- ...t_duellist_spielesammlung_projekt_runner.c | 2 ++ .../test_duellist_spielesammlung_projekt.c | 14 ++++++++ 8 files changed, 87 insertions(+), 3 deletions(-) diff --git a/build/test/cache/test_duellist_spielesammlung_projekt.c b/build/test/cache/test_duellist_spielesammlung_projekt.c index 3da31fc..e0df2e2 100644 --- a/build/test/cache/test_duellist_spielesammlung_projekt.c +++ b/build/test/cache/test_duellist_spielesammlung_projekt.c @@ -931,3 +931,35 @@ void test_calculate_mines_HeightWidthNoRound(void) ), (UNITY_UINT)(409), UNITY_DISPLAY_STYLE_INT); } + + + +void test_calculate_mines_HeightWidthFinal(void) + +{ + + + + int height = 7; + + int width = 7; + + int expected = 12; + + + + + + int result = calculate_mines(height, width); + + + + + + UnityAssertEqualNumber((UNITY_INT)((expected)), (UNITY_INT)((result)), ( + + ((void *)0) + + ), (UNITY_UINT)(423), UNITY_DISPLAY_STYLE_INT); + +} diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt.o b/build/test/out/c/test_duellist_spielesammlung_projekt.o index 8a5e4e5770b83fc68c17e0c69716f6d33f81e814..b07ba5a2236468d59a884aecbc28f2e5f18420e6 100644 GIT binary patch delta 3305 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 O$0GE?;`KUW#mK)K{zVJ` diff --git a/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o b/build/test/out/c/test_duellist_spielesammlung_projekt_runner.o index 430b68f4fdcd754bf923e789dbfe19bb48fead6f..9fe71df793f4847c7295d8c7aadb42247fe48d5d 100644 GIT binary patch delta 499 zcmXv~%}X0m5TDt7n}(R!Y_c)CL1l}RZ80}yW_7wE|G zfg;=8{7XI8Gxbc$Jh)$QSVn#vD4*e_Iwu`Y)UiKN735m(bDh<-^oq_^UD<)6{}`8f8q{ zhN4<=8cR?y1ZhI~06ii!C!O>$YW~)exG}#e8RktH;MHYl(w W^^qk_9NKogf6MY~QrOP%3j6~Nifotw delta 401 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 SZ#=c~-w7S=yqLY!{{H~+z81*< delta 15789 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 Date: Thu, 8 Feb 2024 17:12:58 +0100 Subject: [PATCH 33/33] =?UTF-8?q?Teammitgleid=20name=20eingef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- team.md | 1 + 1 file changed, 1 insertion(+) diff --git a/team.md b/team.md index 0f81dee..17044f8 100644 --- a/team.md +++ b/team.md @@ -2,3 +2,4 @@ - Daniel M, fdai7745 - Erwin Minaev, fdai7776 - Homan Halimi, fdai7892 +- Areeb Ahmad Bilal, fdai7820