From 75cd53d87329286461a620520b82e512e97cc1d2 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Wed, 18 Jan 2023 11:04:15 +0100 Subject: [PATCH 01/24] Funktion Zahlenraetsel erstellt --- src/c/raetselronja.c | 29 +++++++++++++++++++++++++++++ src/c/raetselronja.h | 8 ++++++++ src/c/userinput.c | 8 ++++++++ src/c/userinput.h | 6 ++++++ test/c/test_raetselronja.c | 36 ++++++++++++++++++++++++++++++++++++ 5 files changed, 87 insertions(+) create mode 100644 src/c/raetselronja.c create mode 100644 src/c/raetselronja.h create mode 100644 src/c/userinput.c create mode 100644 src/c/userinput.h create mode 100644 test/c/test_raetselronja.c diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c new file mode 100644 index 0000000..911d603 --- /dev/null +++ b/src/c/raetselronja.c @@ -0,0 +1,29 @@ +#include +#include +#include + +#include "raetselronja.h" +#include "userinput.h" + +int input[] = { 17, 19, 23, 29 }; + +int zahlenraetsel(int input[], int loesung) { + //gegebene zahlen printne und nach ölösungun fragen + int eingabe = 0; + printf("%d %d %d %d\n", input[0], input[1], input[2], input[3]); + printf("Bitte geben Sie die Loesung ein.\n"); + eingabe = userInput(); //hier stand mal scanf,jetzt kommt das in eine Funktion zum testen + if (eingabe == loesung){ + return 1; + printf("Die Antwort ist richtig.\n"); + } + else{ + return 0; + printf("Die Antwort ist falsch.\n"); + } + +} + + +//Zahlenrätsel : 25,50,54,49,98,102,97,194 +//256,289,324,361, \ No newline at end of file diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h new file mode 100644 index 0000000..1ca5eae --- /dev/null +++ b/src/c/raetselronja.h @@ -0,0 +1,8 @@ +#ifndef RAETSELRONJA_H +#define RAETSELRONJA_H + +int zahlenraetsel(int input[], int loesung); + +//wenn das meine main ist, warum dann nicht auch hier ein print und scan + +#endif \ No newline at end of file diff --git a/src/c/userinput.c b/src/c/userinput.c new file mode 100644 index 0000000..d602aa6 --- /dev/null +++ b/src/c/userinput.c @@ -0,0 +1,8 @@ +#include "userinput.h" + + +int userInput(){ + //TODO: user input einlesen + int value; + return value; +} \ No newline at end of file diff --git a/src/c/userinput.h b/src/c/userinput.h new file mode 100644 index 0000000..5e518ff --- /dev/null +++ b/src/c/userinput.h @@ -0,0 +1,6 @@ +#ifndef USERINPUT_H +#define USERINPUT_H + +int userInput(); + +#endif \ No newline at end of file diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c new file mode 100644 index 0000000..e104a76 --- /dev/null +++ b/test/c/test_raetselronja.c @@ -0,0 +1,36 @@ +#ifdef TEST +#include "unity.h" +//in example.h wird die Funktion deklariert +#include "raetselronja.h" +#include "userinput.h" +#include "mock_userinput.h" + +//Vor- bzw. Nachbereitung +void setUp(void) +{ +} + +void tearDown(void) +{ +} + +//Hier läuft der Test +void test_runRaetselTest(void) +{ + /* arrange */ + //Hier die Werte eingeben + int result; + int input[] = {0,1,2,3}; + int loesung = 4; + + /* act */ + //Die Funktion wird ausgeführt + userInput_ExpectAndReturn(4); + result = zahlenraetsel(input, loesung); + + /* assert */ + //Vergleichen + TEST_ASSERT_EQUAL_INT(1, result); +} + +#endif // TEST \ No newline at end of file From 570be19a49fcba6cd8151066b787628d4a26c266 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Thu, 19 Jan 2023 12:57:58 +0100 Subject: [PATCH 02/24] Funktion Zahlenaufruf erstellt --- src/c/raetselronja.c | 17 +++++++++++++++++ src/c/raetselronja.h | 1 + test/c/test_raetselronja.c | 24 ++++++++++++++++++++++-- 3 files changed, 40 insertions(+), 2 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 911d603..ca8b285 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -24,6 +24,23 @@ int zahlenraetsel(int input[], int loesung) { } +int raetselaufruf(){ + + int auswahl = 1; + int loesung = 0; + + switch (auswahl) { + case 1: + int input[] = {25, 50, 54, 49, 98, 102, 97, 194}; + loesung = 198; + zahlenraetsel(input, loesung); + break; + default: return -1; + } + + return auswahl; +} + //Zahlenrätsel : 25,50,54,49,98,102,97,194 //256,289,324,361, \ No newline at end of file diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index 1ca5eae..e1c7736 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -2,6 +2,7 @@ #define RAETSELRONJA_H int zahlenraetsel(int input[], int loesung); +int raetselaufruf(); //wenn das meine main ist, warum dann nicht auch hier ein print und scan diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index e104a76..d0c952a 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -15,8 +15,7 @@ void tearDown(void) } //Hier läuft der Test -void test_runRaetselTest(void) -{ +void test_runRaetselTest(void){ /* arrange */ //Hier die Werte eingeben int result; @@ -33,4 +32,25 @@ void test_runRaetselTest(void) TEST_ASSERT_EQUAL_INT(1, result); } +void test_runRaetselTestFalsch(void){ + +int result; +int input[] = {0,1,2,3}; +int loesung = 4; + +userInput_ExpectAndReturn(5); +result = zahlenraetsel(input, loesung); + +TEST_ASSERT_EQUAL_INT(0, result); + +} + +void test_runRaetselTestzwei(void){ + +userInput_ExpectAndReturn(198); +int result = raetselaufruf(1); //hier wird rätsel 1 aufgerufen + +TEST_ASSERT_EQUAL_INT(1, result); + +} #endif // TEST \ No newline at end of file From 47af9350d8280c27e8efec380304cdab810d35f2 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Thu, 19 Jan 2023 13:23:33 +0100 Subject: [PATCH 03/24] =?UTF-8?q?Refactoring=20userausgabe=20und=20arrays?= =?UTF-8?q?=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 18 ++++++++++++++---- src/c/raetselronja.h | 2 +- test/c/test_raetselronja.c | 8 +++++--- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index ca8b285..173183c 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -5,12 +5,21 @@ #include "raetselronja.h" #include "userinput.h" -int input[] = { 17, 19, 23, 29 }; -int zahlenraetsel(int input[], int loesung) { + +int zahlenraetsel(int input[], int loesung, int n) { //gegebene zahlen printne und nach ölösungun fragen int eingabe = 0; - printf("%d %d %d %d\n", input[0], input[1], input[2], input[3]); + + for(int i = 0; i < n; i++){ + printf("%d", input[i]); + if (i < n -1){ + printf(","); + } + printf(" "); + } + printf("\n"); + printf("Bitte geben Sie die Loesung ein.\n"); eingabe = userInput(); //hier stand mal scanf,jetzt kommt das in eine Funktion zum testen if (eingabe == loesung){ @@ -32,8 +41,9 @@ int raetselaufruf(){ switch (auswahl) { case 1: int input[] = {25, 50, 54, 49, 98, 102, 97, 194}; + int n = 8; loesung = 198; - zahlenraetsel(input, loesung); + zahlenraetsel(input, loesung, n); break; default: return -1; } diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index e1c7736..0e70f40 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -1,7 +1,7 @@ #ifndef RAETSELRONJA_H #define RAETSELRONJA_H -int zahlenraetsel(int input[], int loesung); +int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); //wenn das meine main ist, warum dann nicht auch hier ein print und scan diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index d0c952a..921df57 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -21,11 +21,12 @@ void test_runRaetselTest(void){ int result; int input[] = {0,1,2,3}; int loesung = 4; + int n = 4; /* act */ //Die Funktion wird ausgeführt userInput_ExpectAndReturn(4); - result = zahlenraetsel(input, loesung); + result = zahlenraetsel(input, loesung, n); /* assert */ //Vergleichen @@ -37,15 +38,16 @@ void test_runRaetselTestFalsch(void){ int result; int input[] = {0,1,2,3}; int loesung = 4; +int n = 4; userInput_ExpectAndReturn(5); -result = zahlenraetsel(input, loesung); +result = zahlenraetsel(input, loesung, n); TEST_ASSERT_EQUAL_INT(0, result); } -void test_runRaetselTestzwei(void){ +void test_runRaetselTestrichrig(void){ userInput_ExpectAndReturn(198); int result = raetselaufruf(1); //hier wird rätsel 1 aufgerufen From c135c13e97a823e4b437375f981740b63da7c8c9 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Thu, 19 Jan 2023 13:26:20 +0100 Subject: [PATCH 04/24] =?UTF-8?q?refactoring:=20userausgabe=20und=20arrays?= =?UTF-8?q?=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 18 ++++++++++++++---- src/c/raetselronja.h | 2 +- test/c/test_raetselronja.c | 8 +++++--- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index ca8b285..173183c 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -5,12 +5,21 @@ #include "raetselronja.h" #include "userinput.h" -int input[] = { 17, 19, 23, 29 }; -int zahlenraetsel(int input[], int loesung) { + +int zahlenraetsel(int input[], int loesung, int n) { //gegebene zahlen printne und nach ölösungun fragen int eingabe = 0; - printf("%d %d %d %d\n", input[0], input[1], input[2], input[3]); + + for(int i = 0; i < n; i++){ + printf("%d", input[i]); + if (i < n -1){ + printf(","); + } + printf(" "); + } + printf("\n"); + printf("Bitte geben Sie die Loesung ein.\n"); eingabe = userInput(); //hier stand mal scanf,jetzt kommt das in eine Funktion zum testen if (eingabe == loesung){ @@ -32,8 +41,9 @@ int raetselaufruf(){ switch (auswahl) { case 1: int input[] = {25, 50, 54, 49, 98, 102, 97, 194}; + int n = 8; loesung = 198; - zahlenraetsel(input, loesung); + zahlenraetsel(input, loesung, n); break; default: return -1; } diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index e1c7736..0e70f40 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -1,7 +1,7 @@ #ifndef RAETSELRONJA_H #define RAETSELRONJA_H -int zahlenraetsel(int input[], int loesung); +int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); //wenn das meine main ist, warum dann nicht auch hier ein print und scan diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index d0c952a..921df57 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -21,11 +21,12 @@ void test_runRaetselTest(void){ int result; int input[] = {0,1,2,3}; int loesung = 4; + int n = 4; /* act */ //Die Funktion wird ausgeführt userInput_ExpectAndReturn(4); - result = zahlenraetsel(input, loesung); + result = zahlenraetsel(input, loesung, n); /* assert */ //Vergleichen @@ -37,15 +38,16 @@ void test_runRaetselTestFalsch(void){ int result; int input[] = {0,1,2,3}; int loesung = 4; +int n = 4; userInput_ExpectAndReturn(5); -result = zahlenraetsel(input, loesung); +result = zahlenraetsel(input, loesung, n); TEST_ASSERT_EQUAL_INT(0, result); } -void test_runRaetselTestzwei(void){ +void test_runRaetselTestrichrig(void){ userInput_ExpectAndReturn(198); int result = raetselaufruf(1); //hier wird rätsel 1 aufgerufen From 9ce191b7ef97cd915c81538cd79e056282ee1924 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Fri, 20 Jan 2023 14:33:38 +0100 Subject: [PATCH 05/24] =?UTF-8?q?weitere=20Zahlenfolgen=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 23 +++++++++++++++++++---- src/c/raetselronja.h | 2 +- test/c/test_raetselronja.c | 5 +++-- 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 173183c..fb8665f 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -35,15 +35,30 @@ int zahlenraetsel(int input[], int loesung, int n) { int raetselaufruf(){ - int auswahl = 1; int loesung = 0; + int n = 0; + int auswahl = 1; + + // int auswahl = userInput(); switch (auswahl) { case 1: - int input[] = {25, 50, 54, 49, 98, 102, 97, 194}; - int n = 8; + int input1[] = {25, 50, 54, 49, 98, 102, 97, 194}; + n = 8; loesung = 198; - zahlenraetsel(input, loesung, n); + zahlenraetsel(input1, loesung, n); + break; + case 2: + int input2[] = {17, 19, 23, 29, 37}; + n = 5; + loesung = 47; + zahlenraetsel(input2, loesung, n); + break; + case 3: + int input3[] = {256, 289, 324, 361}; + n = 4; + loesung = 400; + zahlenraetsel(input3, loesung, n); break; default: return -1; } diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index 0e70f40..8982d80 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -4,6 +4,6 @@ int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); -//wenn das meine main ist, warum dann nicht auch hier ein print und scan + #endif \ No newline at end of file diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 921df57..5f950f1 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -47,12 +47,13 @@ TEST_ASSERT_EQUAL_INT(0, result); } -void test_runRaetselTestrichrig(void){ +void test_runRaetselTestrichtig(void){ userInput_ExpectAndReturn(198); -int result = raetselaufruf(1); //hier wird rätsel 1 aufgerufen +int result = raetselaufruf(1); TEST_ASSERT_EQUAL_INT(1, result); } + #endif // TEST \ No newline at end of file From 43cd7406949edc5081215fd68894dc5426596690 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 13:15:13 +0100 Subject: [PATCH 06/24] =?UTF-8?q?Test=20hinzugef=C3=BCgt,=20Funktion=20rea?= =?UTF-8?q?giert=20auf=20userinput?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 13 +++++++------ test/c/test_raetselronja.c | 20 +++++++++++++++++++- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index fb8665f..d17dda1 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -33,13 +33,13 @@ int zahlenraetsel(int input[], int loesung, int n) { } -int raetselaufruf(){ +int raetselaufruf() { int loesung = 0; int n = 0; - int auswahl = 1; + //int auswahl = 1; - // int auswahl = userInput(); + int auswahl = userInput(); switch (auswahl) { case 1: @@ -60,12 +60,13 @@ int raetselaufruf(){ loesung = 400; zahlenraetsel(input3, loesung, n); break; - default: return -1; + //default: return -1; } return auswahl; } -//Zahlenrätsel : 25,50,54,49,98,102,97,194 -//256,289,324,361, \ No newline at end of file + + + diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 5f950f1..663b8e8 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -49,11 +49,29 @@ TEST_ASSERT_EQUAL_INT(0, result); void test_runRaetselTestrichtig(void){ +int input[] = {1,2}; +int loesung = 198; +int n = 2; + userInput_ExpectAndReturn(198); -int result = raetselaufruf(1); +int result = zahlenraetsel(input, loesung, n); TEST_ASSERT_EQUAL_INT(1, result); } + +void test_runRaetselTestAufruf(void){ + + userInput_ExpectAndReturn(1); + userInput_ExpectAndReturn(1); + int result = raetselaufruf(); + +TEST_ASSERT_EQUAL_INT(1, result); + +} + + + + #endif // TEST \ No newline at end of file From e2091a74ba2754ab597666a46cb50a00a0dfd764 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 13:31:59 +0100 Subject: [PATCH 07/24] Funktion armdruecken erstellt --- src/c/raetselronja.c | 19 +++++++++++++++++++ src/c/raetselronja.h | 1 + test/c/test_raetselronja.c | 11 +++++++++++ 3 files changed, 31 insertions(+) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index d17dda1..0172e19 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -67,6 +67,25 @@ int raetselaufruf() { } +int armdruecken(int gegner, int spieler){ + +int differenz = 0; + +if (gegner > spieler){ + differenz = gegner - spieler; + printf("Der Gegner ist um %d stärker\n", differenz); + printf("Niederlage"); + return 0; +} +if (gegner < spieler){ + differenz = spieler - gegner; + printf("Der Gegner ist um %d schwächer\n", differenz); + printf("Sieg"); + return 1; +} + +} + diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index 8982d80..5de01c4 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -3,6 +3,7 @@ int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); +int armdruecken(int gegner, int spieler); diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 663b8e8..7eb707d 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -72,6 +72,17 @@ TEST_ASSERT_EQUAL_INT(1, result); } +void test_runRaetselTestArmduecken(void){ + +int spieler = 10; +int gegner = 25; +int result = armdruecken(gegner, spieler); + +TEST_ASSERT_EQUAL_INT(0, result); + +} + + #endif // TEST \ No newline at end of file From 26dcf2bf942d60f945b6fdc1ef2e3321427c1006 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 15:01:37 +0100 Subject: [PATCH 08/24] Funktion blackjack erstellt --- src/c/raetselronja.c | 34 ++++++++++++++++++++++++++++++++++ src/c/raetselronja.h | 2 +- src/c/randomnumber.c | 8 ++++++++ src/c/randomnumber.h | 6 ++++++ test/c/test_raetselronja.c | 22 ++++++++++++++++++++++ 5 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 src/c/randomnumber.c create mode 100644 src/c/randomnumber.h diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 0172e19..cdfbe0c 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -1,9 +1,11 @@ #include #include #include +#include #include "raetselronja.h" #include "userinput.h" +#include "randomnumber.h" @@ -86,6 +88,38 @@ if (gegner < spieler){ } +int blackjack(int spieler, int geber, int janein){ + + int lower = 1, upper = 11, count = 1, num = 0, num2 = 0; + + srand(time(NULL)); + + printf("Wollen Sie das Spiel starten?\nJA(1), NEIN(2)\n"); + janein = userInput(); + + while (spieler < 21 && geber < 21) { + + if (janein == 1) { + for (int i = 1; i <= count; i++) { + int num = (randnum() % (upper - lower + 1)) + lower; + printf("Sie haben eine %d bekommen\n", num); + spieler += num; + printf("Nun haben Sie: %d\n", spieler); + } + for (int i = 1; i <= count; i++) { + int num = (randnum() % (upper - lower + 1)) + lower; + printf("Der Geber hat eine %d bekommen\n", num); + geber += num; + printf("Nun hat der Geber: %d\n", geber); + } + printf("Wollen Sie eine weitere Karte?\nJA(1), NEIN(2)\n"); + janein = userInput(); + } + } + return 1; + +} + diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index 5de01c4..e81ff79 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -4,7 +4,7 @@ int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); int armdruecken(int gegner, int spieler); - +int blackjack(int spieler, int geber, int janein); #endif \ No newline at end of file diff --git a/src/c/randomnumber.c b/src/c/randomnumber.c new file mode 100644 index 0000000..926cfea --- /dev/null +++ b/src/c/randomnumber.c @@ -0,0 +1,8 @@ +#include "randomnumber.h" + +int randnum(){ + +int value; +return value; + +} \ No newline at end of file diff --git a/src/c/randomnumber.h b/src/c/randomnumber.h new file mode 100644 index 0000000..e9de3e6 --- /dev/null +++ b/src/c/randomnumber.h @@ -0,0 +1,6 @@ +#ifndef RANDOMNUMBER_H +#define RANDOMNUMBER_H + +int randnum(); + +#endif \ No newline at end of file diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 7eb707d..971b59b 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -4,6 +4,8 @@ #include "raetselronja.h" #include "userinput.h" #include "mock_userinput.h" +#include "randomnumber.h" +#include "mock_randomnumber.h" //Vor- bzw. Nachbereitung void setUp(void) @@ -82,6 +84,26 @@ TEST_ASSERT_EQUAL_INT(0, result); } +void test_runRaetselTestBJ(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(8); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(1, result); +} + From 1f170acdf3cf5706c90a2f4034790f43a5385cf8 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 15:11:01 +0100 Subject: [PATCH 09/24] funktion mit else erweitert --- src/c/raetselronja.c | 19 +++++++++++++++++-- test/c/test_raetselronja.c | 16 ++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index cdfbe0c..7525054 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -115,9 +115,24 @@ int blackjack(int spieler, int geber, int janein){ printf("Wollen Sie eine weitere Karte?\nJA(1), NEIN(2)\n"); janein = userInput(); } + else { + if (spieler <= 0) { + printf("Auf Wiedersehen"); + return 0; + break;//wer hat gewonnen + } + else if (spieler > geber) { + printf("Spieler hat gewonnen."); + return 1; + break; + } + else if (spieler < geber) { + printf("Geber hat gewonnen."); + return 2; + break; + } + } } - return 1; - } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 971b59b..667d442 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -104,6 +104,22 @@ void test_runRaetselTestBJ(void){ TEST_ASSERT_EQUAL_INT(1, result); } +void test_runRaetselTestBJif(void){ + +int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(8); + userInput_ExpectAndReturn(2); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(1, result); + +} From 8f57b5465762e63edbd49a95d3dfcd524f213d4c Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 19:07:08 +0100 Subject: [PATCH 10/24] =?UTF-8?q?If=20Schleife=20f=C3=BCr=20gewinnerbestim?= =?UTF-8?q?mung=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 6 +++++- test/c/test_raetselronja.c | 24 ++++++++++++++++++++++-- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 7525054..518e6e2 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -119,7 +119,7 @@ int blackjack(int spieler, int geber, int janein){ if (spieler <= 0) { printf("Auf Wiedersehen"); return 0; - break;//wer hat gewonnen + break; } else if (spieler > geber) { printf("Spieler hat gewonnen."); @@ -133,6 +133,10 @@ int blackjack(int spieler, int geber, int janein){ } } } + if (janein == 1 && (spieler >= 21 || geber >= 21)) { + + return 0; + } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 667d442..202d565 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -101,12 +101,12 @@ void test_runRaetselTestBJ(void){ int result = blackjack(spieler, geber, janein); - TEST_ASSERT_EQUAL_INT(1, result); + TEST_ASSERT_EQUAL_INT(0, result); } void test_runRaetselTestBJif(void){ -int spieler = 0; + int spieler = 0; int geber = 0; int janein = 0; @@ -121,6 +121,26 @@ int spieler = 0; } +void test_runRaetselTestBJifende(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(8); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(7); + userInput_ExpectAndReturn(1); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(0, result); + +} + #endif // TEST \ No newline at end of file From 62d297e5eb7c243fac9b26578fae6e331e0a29ba Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 19:15:57 +0100 Subject: [PATCH 11/24] =?UTF-8?q?if=20schleife=20spieler=20gewinnt=20einge?= =?UTF-8?q?f=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 5 ++++- test/c/test_raetselronja.c | 24 ++++++++++++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 518e6e2..1033cff 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -135,7 +135,10 @@ int blackjack(int spieler, int geber, int janein){ } if (janein == 1 && (spieler >= 21 || geber >= 21)) { - return 0; + if ((geber > 21 || geber < 21) && spieler == 21) { + printf("Spieler hat gewonnen."); + return 1; + } } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 202d565..01144d5 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -101,7 +101,7 @@ void test_runRaetselTestBJ(void){ int result = blackjack(spieler, geber, janein); - TEST_ASSERT_EQUAL_INT(0, result); + TEST_ASSERT_EQUAL_INT(1, result); } void test_runRaetselTestBJif(void){ @@ -137,7 +137,27 @@ void test_runRaetselTestBJifende(void){ int result = blackjack(spieler, geber, janein); - TEST_ASSERT_EQUAL_INT(0, result); + TEST_ASSERT_EQUAL_INT(1, result); + +} + +void test_runRaetselTestBJifende1(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(8); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(9); + randnum_ExpectAndReturn(7); + userInput_ExpectAndReturn(1); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(1, result); } From b2192f088eee87b1e7dd7d969d9a77ddcf85043e Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 19:18:53 +0100 Subject: [PATCH 12/24] =?UTF-8?q?if=20schleife=20geber=20gewinnt=20eingef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 4 ++++ test/c/test_raetselronja.c | 19 +++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 1033cff..40ff2e8 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -139,6 +139,10 @@ int blackjack(int spieler, int geber, int janein){ printf("Spieler hat gewonnen."); return 1; } + if (geber == 21 && (spieler > 21 || spieler < 21)) { + printf("Geber hat gewonnen."); + return 2; + } } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 01144d5..2d3bc55 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -161,6 +161,25 @@ void test_runRaetselTestBJifende1(void){ } +void test_runRaetselTestBJifende2(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(7); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(8); + randnum_ExpectAndReturn(9); + userInput_ExpectAndReturn(1); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(2, result); + +} #endif // TEST \ No newline at end of file From dc9396d7ed7ffd6970bd630c1943a96d8c79d07d Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Mon, 23 Jan 2023 19:23:17 +0100 Subject: [PATCH 13/24] =?UTF-8?q?if=20schleife=20verloren=20hinzugef=C3=BC?= =?UTF-8?q?gt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 4 ++++ test/c/test_raetselronja.c | 19 +++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 40ff2e8..6a3f5e3 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -143,6 +143,10 @@ int blackjack(int spieler, int geber, int janein){ printf("Geber hat gewonnen."); return 2; } + if (geber > 21 && spieler > 21) { + printf("Verloren"); + return 0; + } } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 2d3bc55..a65fba2 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -181,5 +181,24 @@ void test_runRaetselTestBJifende2(void){ } +void test_runRaetselTestBJifende3(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(0, result); + +} #endif // TEST \ No newline at end of file From dab2130aad2faa30f9849b10a3679b0832570ddd Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 12:31:51 +0100 Subject: [PATCH 14/24] =?UTF-8?q?if=20schleife=20unentschieden=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 12 +++++++++--- test/c/test_raetselronja.c | 25 +++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 6a3f5e3..3ff71b8 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -90,7 +90,7 @@ if (gegner < spieler){ int blackjack(int spieler, int geber, int janein){ - int lower = 1, upper = 11, count = 1, num = 0, num2 = 0; + int lower = 1, upper = 11, count = 1, num = 0, num2 = 0; //num2 nicht notwendig srand(time(NULL)); @@ -139,17 +139,23 @@ int blackjack(int spieler, int geber, int janein){ printf("Spieler hat gewonnen."); return 1; } - if (geber == 21 && (spieler > 21 || spieler < 21)) { + else if (geber == 21 && (spieler > 21 || spieler < 21)) { printf("Geber hat gewonnen."); return 2; } - if (geber > 21 && spieler > 21) { + else if (geber > 21 && spieler > 21) { printf("Verloren"); return 0; } + else if (geber == spieler && geber == 21) { + printf("Unentschienden."); + return 0; + } } } +//geber größer 21 spieler kleinr 21 +// einer über 21 der andere drunter diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index a65fba2..fb91a82 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -94,7 +94,7 @@ void test_runRaetselTestBJ(void){ randnum_ExpectAndReturn(10); randnum_ExpectAndReturn(8); userInput_ExpectAndReturn(1); - randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(9); randnum_ExpectAndReturn(10); userInput_ExpectAndReturn(1); @@ -131,7 +131,7 @@ void test_runRaetselTestBJifende(void){ randnum_ExpectAndReturn(10); randnum_ExpectAndReturn(8); userInput_ExpectAndReturn(1); - randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(9); randnum_ExpectAndReturn(7); userInput_ExpectAndReturn(1); @@ -201,4 +201,25 @@ void test_runRaetselTestBJifende3(void){ } +void test_runRaetselTestBJifende4(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(9); + randnum_ExpectAndReturn(9); + userInput_ExpectAndReturn(1); + + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(0, result); + +} + + #endif // TEST \ No newline at end of file From 47f81726d718d79365f49b5f78c88e7ea41fe0d5 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 12:42:20 +0100 Subject: [PATCH 15/24] =?UTF-8?q?if=20schleife=20spieler=20gewonnen=20unte?= =?UTF-8?q?r=2021=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 4 ++++ test/c/test_raetselronja.c | 29 ++++++++++++++++++++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 3ff71b8..03b8fdd 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -151,6 +151,10 @@ int blackjack(int spieler, int geber, int janein){ printf("Unentschienden."); return 0; } + if (geber > 21 && spieler < 21) { + printf("Spieler hat gewonnen."); + return 1; + } } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index fb91a82..967ee97 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -98,7 +98,7 @@ void test_runRaetselTestBJ(void){ randnum_ExpectAndReturn(10); userInput_ExpectAndReturn(1); - + printf("-----------------------------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(1, result); @@ -115,6 +115,7 @@ void test_runRaetselTestBJif(void){ randnum_ExpectAndReturn(8); userInput_ExpectAndReturn(2); + printf("-----------------------------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(1, result); @@ -135,6 +136,7 @@ void test_runRaetselTestBJifende(void){ randnum_ExpectAndReturn(7); userInput_ExpectAndReturn(1); + printf("-----------------------------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(1, result); @@ -155,6 +157,7 @@ void test_runRaetselTestBJifende1(void){ randnum_ExpectAndReturn(7); userInput_ExpectAndReturn(1); + printf("-----------------------1------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(1, result); @@ -175,6 +178,7 @@ void test_runRaetselTestBJifende2(void){ randnum_ExpectAndReturn(9); userInput_ExpectAndReturn(1); + printf("-----------------------2------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(2, result); @@ -195,6 +199,7 @@ void test_runRaetselTestBJifende3(void){ randnum_ExpectAndReturn(10); userInput_ExpectAndReturn(1); + printf("-----------------------3------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(0, result); @@ -215,11 +220,33 @@ void test_runRaetselTestBJifende4(void){ randnum_ExpectAndReturn(9); userInput_ExpectAndReturn(1); + printf("-----------------------4------------------------\n"); int result = blackjack(spieler, geber, janein); TEST_ASSERT_EQUAL_INT(0, result); } +void test_runRaetselTestBJifende5(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(7); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + + printf("-----------------------5------------------------\n"); + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(1, result); + +} + #endif // TEST \ No newline at end of file From 046e910e83c7c3cae07a686058fe0438ae0b395c Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 12:48:44 +0100 Subject: [PATCH 16/24] if schleife geber unter 21 gewonnen --- src/c/raetselronja.c | 4 ++++ test/c/test_raetselronja.c | 36 ++++++++++++++++++++++++++++++------ 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 03b8fdd..fe3a46c 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -155,6 +155,10 @@ int blackjack(int spieler, int geber, int janein){ printf("Spieler hat gewonnen."); return 1; } + if (geber < 21 && spieler > 21) { + printf("Geber hat gewonnen."); + return 2; + } } } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 967ee97..5ac72f8 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -67,20 +67,23 @@ void test_runRaetselTestAufruf(void){ userInput_ExpectAndReturn(1); userInput_ExpectAndReturn(1); - int result = raetselaufruf(); -TEST_ASSERT_EQUAL_INT(1, result); + + int result = raetselaufruf(); + TEST_ASSERT_EQUAL_INT(1, result); } void test_runRaetselTestArmduecken(void){ -int spieler = 10; -int gegner = 25; -int result = armdruecken(gegner, spieler); + int spieler = 10; + int gegner = 25; -TEST_ASSERT_EQUAL_INT(0, result); + printf("-----------------------------------------------\n"); + + int result = armdruecken(gegner, spieler); + TEST_ASSERT_EQUAL_INT(0, result); } @@ -248,5 +251,26 @@ void test_runRaetselTestBJifende5(void){ } +void test_runRaetselTestBJifende6(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(7); + userInput_ExpectAndReturn(1); + + printf("-----------------------6------------------------\n"); + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(2, result); + +} + #endif // TEST \ No newline at end of file From 2e1a3b9efb5079463af425af4e04bc90cbc9fe76 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 13:22:24 +0100 Subject: [PATCH 17/24] =?UTF-8?q?refactoring:=20ausgabe,sprache,reihenfolg?= =?UTF-8?q?e=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index fe3a46c..e9f2ea7 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -10,7 +10,7 @@ int zahlenraetsel(int input[], int loesung, int n) { - //gegebene zahlen printne und nach ölösungun fragen + int eingabe = 0; for(int i = 0; i < n; i++){ @@ -22,15 +22,15 @@ int zahlenraetsel(int input[], int loesung, int n) { } printf("\n"); - printf("Bitte geben Sie die Loesung ein.\n"); + printf("Please enter a solution.\n"); eingabe = userInput(); //hier stand mal scanf,jetzt kommt das in eine Funktion zum testen if (eingabe == loesung){ + printf("The answer is right.\n"); return 1; - printf("Die Antwort ist richtig.\n"); } else{ + printf("The answer is wrong.\n"); return 0; - printf("Die Antwort ist falsch.\n"); } } @@ -162,8 +162,3 @@ int blackjack(int spieler, int geber, int janein){ } } - -//geber größer 21 spieler kleinr 21 -// einer über 21 der andere drunter - - From bac3ff19de82fa56803e6f9e692acc8fb17eb681 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 13:29:00 +0100 Subject: [PATCH 18/24] refactoring: sprache, formatierung in armdruecken --- src/c/raetselronja.c | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index e9f2ea7..3183d8e 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -39,7 +39,6 @@ int raetselaufruf() { int loesung = 0; int n = 0; - //int auswahl = 1; int auswahl = userInput(); @@ -62,7 +61,7 @@ int raetselaufruf() { loesung = 400; zahlenraetsel(input3, loesung, n); break; - //default: return -1; + default: return -1; } return auswahl; @@ -73,18 +72,18 @@ int armdruecken(int gegner, int spieler){ int differenz = 0; -if (gegner > spieler){ - differenz = gegner - spieler; - printf("Der Gegner ist um %d stärker\n", differenz); - printf("Niederlage"); - return 0; -} -if (gegner < spieler){ - differenz = spieler - gegner; - printf("Der Gegner ist um %d schwächer\n", differenz); - printf("Sieg"); - return 1; -} + if (gegner > spieler){ + differenz = gegner - spieler; + printf("The opponent is around %d stronger.\n", differenz); + printf("Defeat."); + return 0; + } + if (gegner < spieler){ + differenz = spieler - gegner; + printf("The opponent is around %d weaker.\n", differenz); + printf("Victory."); + return 1; + } } From 7420e7709cdcbaca81f8ad0d3f7c2b5a31f1f135 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Tue, 24 Jan 2023 18:06:54 +0100 Subject: [PATCH 19/24] refactoring: sprache und variablen in blackjack --- src/c/raetselronja.c | 55 ++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 3183d8e..dcac3cd 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -87,75 +87,76 @@ int differenz = 0; } -int blackjack(int spieler, int geber, int janein){ +int blackjack(int spieler, int gegner, int janein){ int lower = 1, upper = 11, count = 1, num = 0, num2 = 0; //num2 nicht notwendig srand(time(NULL)); - printf("Wollen Sie das Spiel starten?\nJA(1), NEIN(2)\n"); + printf("Do you want to start the game?\nYES(1), NO(2)\n"); janein = userInput(); - while (spieler < 21 && geber < 21) { + while (spieler < 21 && gegner < 21) { if (janein == 1) { for (int i = 1; i <= count; i++) { int num = (randnum() % (upper - lower + 1)) + lower; - printf("Sie haben eine %d bekommen\n", num); + printf("You got a: %d.\n", num); spieler += num; - printf("Nun haben Sie: %d\n", spieler); + printf("Now you have: %d\n", spieler); } for (int i = 1; i <= count; i++) { int num = (randnum() % (upper - lower + 1)) + lower; - printf("Der Geber hat eine %d bekommen\n", num); - geber += num; - printf("Nun hat der Geber: %d\n", geber); + printf("The opponent got a: %d.\n", num); + gegner += num; + printf("Now the opponent has: %d\n", gegner); } - printf("Wollen Sie eine weitere Karte?\nJA(1), NEIN(2)\n"); + printf("Do you want another card?\nYES(1), NO(2)\n"); janein = userInput(); } else { if (spieler <= 0) { - printf("Auf Wiedersehen"); + printf("Goodbye"); return 0; break; } - else if (spieler > geber) { - printf("Spieler hat gewonnen."); + else if (spieler > gegner) { + printf("Player wins."); return 1; break; } - else if (spieler < geber) { - printf("Geber hat gewonnen."); + else if (spieler < gegner) { + printf("Opponent wins."); return 2; break; } } } - if (janein == 1 && (spieler >= 21 || geber >= 21)) { + if (janein == 1 && (spieler >= 21 || gegner >= 21)) { - if ((geber > 21 || geber < 21) && spieler == 21) { - printf("Spieler hat gewonnen."); + if ((gegner > 21 || gegner < 21) && spieler == 21) { + printf("Player wins."); return 1; } - else if (geber == 21 && (spieler > 21 || spieler < 21)) { - printf("Geber hat gewonnen."); + else if (gegner == 21 && (spieler > 21 || spieler < 21)) { + printf("Opponent wins."); return 2; } - else if (geber > 21 && spieler > 21) { - printf("Verloren"); + else if (gegner > 21 && spieler > 21) { + printf("No one wins."); return 0; + } - else if (geber == spieler && geber == 21) { - printf("Unentschienden."); + else if (gegner == spieler && gegner == 21) { + printf("Tie."); return 0; } - if (geber > 21 && spieler < 21) { - printf("Spieler hat gewonnen."); + if (gegner > 21 && spieler < 21) { + printf("Player wins."); return 1; } - if (geber < 21 && spieler > 21) { - printf("Geber hat gewonnen."); + if (gegner < 21 && spieler > 21) { + printf("Opponent wins."); return 2; } } From 883c98b79883a5b91bdc3b2184d68d45bba4d4e9 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Fri, 27 Jan 2023 11:57:10 +0100 Subject: [PATCH 20/24] =?UTF-8?q?refactoring:=20variable=20gel=C3=B6scht?= =?UTF-8?q?=20+=20return=20variable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index dcac3cd..1ee71a3 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -89,7 +89,7 @@ int differenz = 0; int blackjack(int spieler, int gegner, int janein){ - int lower = 1, upper = 11, count = 1, num = 0, num2 = 0; //num2 nicht notwendig + int lower = 1, upper = 11, count = 1, num = 0, ergebnis = 0; srand(time(NULL)); @@ -117,17 +117,20 @@ int blackjack(int spieler, int gegner, int janein){ else { if (spieler <= 0) { printf("Goodbye"); - return 0; + ergebnis = 0; + return ergebnis; break; } else if (spieler > gegner) { printf("Player wins."); - return 1; + ergebnis = 1; + return ergebnis; break; } else if (spieler < gegner) { printf("Opponent wins."); - return 2; + ergebnis = 2; + return ergebnis; break; } } @@ -136,29 +139,36 @@ int blackjack(int spieler, int gegner, int janein){ if ((gegner > 21 || gegner < 21) && spieler == 21) { printf("Player wins."); - return 1; + ergebnis = 1; + return ergebnis; } else if (gegner == 21 && (spieler > 21 || spieler < 21)) { printf("Opponent wins."); - return 2; + ergebnis = 2; + return ergebnis; } else if (gegner > 21 && spieler > 21) { printf("No one wins."); - return 0; + ergebnis = 0; + return ergebnis; } else if (gegner == spieler && gegner == 21) { printf("Tie."); - return 0; + ergebnis = 0; + return ergebnis; } if (gegner > 21 && spieler < 21) { printf("Player wins."); - return 1; + ergebnis = 1; + return ergebnis; } if (gegner < 21 && spieler > 21) { printf("Opponent wins."); - return 2; + ergebnis = 2; + return ergebnis; } } + //if ergenis == 0 dann blackjack(spieler, gegner) } From d2e64ae38878b1dfd9cfaf85fe240facd6e3ff32 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Fri, 27 Jan 2023 12:31:53 +0100 Subject: [PATCH 21/24] =?UTF-8?q?if=20schleife=20im=20Fall=20ergebnis=20?= =?UTF-8?q?=3D=200=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 23 +++++++++++++---------- test/c/test_raetselronja.c | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 10 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 1ee71a3..3e4f91e 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -116,19 +116,19 @@ int blackjack(int spieler, int gegner, int janein){ } else { if (spieler <= 0) { - printf("Goodbye"); + printf("Goodbye\n"); ergebnis = 0; return ergebnis; break; } else if (spieler > gegner) { - printf("Player wins."); + printf("Player wins.\n"); ergebnis = 1; return ergebnis; break; } else if (spieler < gegner) { - printf("Opponent wins."); + printf("Opponent wins\n."); ergebnis = 2; return ergebnis; break; @@ -138,37 +138,40 @@ int blackjack(int spieler, int gegner, int janein){ if (janein == 1 && (spieler >= 21 || gegner >= 21)) { if ((gegner > 21 || gegner < 21) && spieler == 21) { - printf("Player wins."); + printf("Player wins.\n"); ergebnis = 1; return ergebnis; } else if (gegner == 21 && (spieler > 21 || spieler < 21)) { - printf("Opponent wins."); + printf("Opponent wins.\n"); ergebnis = 2; return ergebnis; } else if (gegner > 21 && spieler > 21) { - printf("No one wins."); + printf("No one wins.\n"); ergebnis = 0; return ergebnis; } else if (gegner == spieler && gegner == 21) { - printf("Tie."); + printf("Tie.\n"); ergebnis = 0; return ergebnis; } if (gegner > 21 && spieler < 21) { - printf("Player wins."); + printf("Player wins.\n"); ergebnis = 1; return ergebnis; } if (gegner < 21 && spieler > 21) { - printf("Opponent wins."); + printf("Opponent wins.\n"); ergebnis = 2; return ergebnis; } } - //if ergenis == 0 dann blackjack(spieler, gegner) + if (ergebnis = 0){ + return blackjack(spieler, gegner, janein); + } + } diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 5ac72f8..8b1e334 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -272,5 +272,40 @@ void test_runRaetselTestBJifende6(void){ } +void test_runRaetselTestBJifnull(void){ + + int spieler = 0; + int geber = 0; + int janein = 0; + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + + printf("-----------------------7------------------------\n"); + + int result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(0, result); + + + + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(10); + userInput_ExpectAndReturn(1); + randnum_ExpectAndReturn(10); + randnum_ExpectAndReturn(7); + userInput_ExpectAndReturn(1); + + printf("-----------------------8------------------------\n"); + + result = blackjack(spieler, geber, janein); + TEST_ASSERT_EQUAL_INT(2, result); + +} #endif // TEST \ No newline at end of file From e09c3516c20c124a42201f2b0f4d9b9893e282ca Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Fri, 27 Jan 2023 12:39:33 +0100 Subject: [PATCH 22/24] =?UTF-8?q?refactoring:=20var-namen=20ge=C3=A4ndert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.h | 2 +- test/c/test_raetselronja.c | 42 +++++++++++++++++++------------------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index e81ff79..abdd77a 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -4,7 +4,7 @@ int zahlenraetsel(int input[], int loesung, int n); int raetselaufruf(); int armdruecken(int gegner, int spieler); -int blackjack(int spieler, int geber, int janein); +int blackjack(int spieler, int gegner, int janein); #endif \ No newline at end of file diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 8b1e334..6d4f293 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -90,7 +90,7 @@ void test_runRaetselTestArmduecken(void){ void test_runRaetselTestBJ(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -103,14 +103,14 @@ void test_runRaetselTestBJ(void){ printf("-----------------------------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(1, result); } void test_runRaetselTestBJif(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -120,7 +120,7 @@ void test_runRaetselTestBJif(void){ printf("-----------------------------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(1, result); } @@ -128,7 +128,7 @@ void test_runRaetselTestBJif(void){ void test_runRaetselTestBJifende(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -141,7 +141,7 @@ void test_runRaetselTestBJifende(void){ printf("-----------------------------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(1, result); } @@ -149,7 +149,7 @@ void test_runRaetselTestBJifende(void){ void test_runRaetselTestBJifende1(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -162,7 +162,7 @@ void test_runRaetselTestBJifende1(void){ printf("-----------------------1------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(1, result); } @@ -170,7 +170,7 @@ void test_runRaetselTestBJifende1(void){ void test_runRaetselTestBJifende2(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -183,7 +183,7 @@ void test_runRaetselTestBJifende2(void){ printf("-----------------------2------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(2, result); } @@ -191,7 +191,7 @@ void test_runRaetselTestBJifende2(void){ void test_runRaetselTestBJifende3(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -204,7 +204,7 @@ void test_runRaetselTestBJifende3(void){ printf("-----------------------3------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(0, result); } @@ -212,7 +212,7 @@ void test_runRaetselTestBJifende3(void){ void test_runRaetselTestBJifende4(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -225,7 +225,7 @@ void test_runRaetselTestBJifende4(void){ printf("-----------------------4------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(0, result); } @@ -233,7 +233,7 @@ void test_runRaetselTestBJifende4(void){ void test_runRaetselTestBJifende5(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -246,7 +246,7 @@ void test_runRaetselTestBJifende5(void){ printf("-----------------------5------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(1, result); } @@ -254,7 +254,7 @@ void test_runRaetselTestBJifende5(void){ void test_runRaetselTestBJifende6(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -267,7 +267,7 @@ void test_runRaetselTestBJifende6(void){ printf("-----------------------6------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(2, result); } @@ -275,7 +275,7 @@ void test_runRaetselTestBJifende6(void){ void test_runRaetselTestBJifnull(void){ int spieler = 0; - int geber = 0; + int gegner = 0; int janein = 0; userInput_ExpectAndReturn(1); @@ -288,7 +288,7 @@ void test_runRaetselTestBJifnull(void){ printf("-----------------------7------------------------\n"); - int result = blackjack(spieler, geber, janein); + int result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(0, result); @@ -303,7 +303,7 @@ void test_runRaetselTestBJifnull(void){ printf("-----------------------8------------------------\n"); - result = blackjack(spieler, geber, janein); + result = blackjack(spieler, gegner, janein); TEST_ASSERT_EQUAL_INT(2, result); } From a85c4bf4d59bc5c55c2114a510b457515970cf61 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Fri, 27 Jan 2023 12:51:04 +0100 Subject: [PATCH 23/24] =?UTF-8?q?variable=20und=20if=20schleife=20mit=20?= =?UTF-8?q?=20bool=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index 3e4f91e..bfc0f2a 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -2,6 +2,7 @@ #include #include #include +#include #include "raetselronja.h" #include "userinput.h" @@ -90,12 +91,16 @@ int differenz = 0; int blackjack(int spieler, int gegner, int janein){ int lower = 1, upper = 11, count = 1, num = 0, ergebnis = 0; + bool wiederholen = false; srand(time(NULL)); - printf("Do you want to start the game?\nYES(1), NO(2)\n"); + if (wiederholen = false){ + printf("Do you want to start the game?\nYES(1), NO(2)\n"); + } janein = userInput(); - + + while (spieler < 21 && gegner < 21) { if (janein == 1) { @@ -170,6 +175,7 @@ int blackjack(int spieler, int gegner, int janein){ } } if (ergebnis = 0){ + wiederholen = true; return blackjack(spieler, gegner, janein); } From 376ced0c85aa7f45df536e1632b12d1d79d53846 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Sun, 29 Jan 2023 17:36:37 +0100 Subject: [PATCH 24/24] =?UTF-8?q?refactoring:=20funktionsname=20ge=C3=A4nd?= =?UTF-8?q?ert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/c/raetselronja.c | 2 +- src/c/raetselronja.h | 2 +- test/c/test_raetselronja.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/c/raetselronja.c b/src/c/raetselronja.c index bfc0f2a..235d170 100644 --- a/src/c/raetselronja.c +++ b/src/c/raetselronja.c @@ -36,7 +36,7 @@ int zahlenraetsel(int input[], int loesung, int n) { } -int raetselaufruf() { +int aufrufzahlenraetsel() { int loesung = 0; int n = 0; diff --git a/src/c/raetselronja.h b/src/c/raetselronja.h index abdd77a..2812df2 100644 --- a/src/c/raetselronja.h +++ b/src/c/raetselronja.h @@ -2,7 +2,7 @@ #define RAETSELRONJA_H int zahlenraetsel(int input[], int loesung, int n); -int raetselaufruf(); +int aufrufzahlenraetsel(); int armdruecken(int gegner, int spieler); int blackjack(int spieler, int gegner, int janein); diff --git a/test/c/test_raetselronja.c b/test/c/test_raetselronja.c index 6d4f293..5509e2d 100644 --- a/test/c/test_raetselronja.c +++ b/test/c/test_raetselronja.c @@ -69,7 +69,7 @@ void test_runRaetselTestAufruf(void){ userInput_ExpectAndReturn(1); - int result = raetselaufruf(); + int result = aufrufzahlenraetsel(); TEST_ASSERT_EQUAL_INT(1, result); }