From 47af9350d8280c27e8efec380304cdab810d35f2 Mon Sep 17 00:00:00 2001 From: Ronja Awe Date: Thu, 19 Jan 2023 13:23:33 +0100 Subject: [PATCH] =?UTF-8?q?Refactoring=20userausgabe=20und=20arrays=20ge?= =?UTF-8?q?=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