|
|
@ -3,13 +3,14 @@ |
|
|
|
#include <stdlib.h> |
|
|
|
#include <time.h> |
|
|
|
|
|
|
|
char* getWelcomeMessageSSP(); |
|
|
|
int selectCOMChoice(); |
|
|
|
void printResult(int, int); |
|
|
|
|
|
|
|
void schereSteinPapier() |
|
|
|
{ |
|
|
|
srand(time(NULL)); |
|
|
|
printf("\nHallo und Willkommen zu Schere-Stein-Papier!\n\nIn diesem Spiel spielst du gegen einen COM Schere-Stein-Papier!\n" |
|
|
|
"Waehle, sobald dich die Konsole dazu auffordert, deine 'Waffe' aus, indem du die entsprechende Zahl eintippst.\n" |
|
|
|
"Gibst du bei der Aufforderung 0 ein, gelangst du zurueck ins Hauptmenue!\n\n"); |
|
|
|
printf("%s", getWelcomeMessageSSP()); |
|
|
|
while(1) |
|
|
|
{ |
|
|
|
int comChoice, userChoice; |
|
|
@ -23,18 +24,9 @@ void schereSteinPapier() |
|
|
|
} |
|
|
|
else if(userChoice == 1 || userChoice == 2 || userChoice == 3) |
|
|
|
{ |
|
|
|
comChoice = rand() % 3 + 1; |
|
|
|
comChoice = selectCOMChoice(); |
|
|
|
int winNum = calculateWinner(userChoice, comChoice); |
|
|
|
switch (winNum) |
|
|
|
{ |
|
|
|
case(-1):printf("Der Computer hat %d gewaehlt, Du hast verloren!!!\n\n", comChoice); |
|
|
|
break; |
|
|
|
case(0): printf("Der Computer hat %d gewaehlt, Es steht unentschieden!!!\n\n", comChoice); |
|
|
|
break; |
|
|
|
case(1): printf("Der Computer hat %d gewaehlt, Du hast gewonnen!!!\n\n", comChoice); |
|
|
|
break; |
|
|
|
default: printf("Error!"); |
|
|
|
} |
|
|
|
printResult(winNum, comChoice); |
|
|
|
} |
|
|
|
else |
|
|
|
{ |
|
|
@ -83,4 +75,30 @@ int calculateWinner(int userSelection, int comSelection) |
|
|
|
default: return 3; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
int selectCOMChoice() |
|
|
|
{ |
|
|
|
return rand() % 3 + 1; |
|
|
|
} |
|
|
|
|
|
|
|
char* getWelcomeMessageSSP() |
|
|
|
{ |
|
|
|
return "\nHallo und Willkommen zu Schere-Stein-Papier!\n\nIn diesem Spiel spielst du gegen einen COM Schere-Stein-Papier!\n" |
|
|
|
"Waehle, sobald dich die Konsole dazu auffordert, deine 'Waffe' aus, indem du die entsprechende Zahl eintippst.\n" |
|
|
|
"Gibst du bei der Aufforderung 0 ein, gelangst du zurueck ins Hauptmenue!\n\n"; |
|
|
|
} |
|
|
|
|
|
|
|
void printResult(int winNumb, int comSelect) |
|
|
|
{ |
|
|
|
switch (winNumb) |
|
|
|
{ |
|
|
|
case(-1):printf("Der Computer hat %d gewaehlt, Du hast verloren!!!\n\n", comSelect); |
|
|
|
break; |
|
|
|
case(0): printf("Der Computer hat %d gewaehlt, Es steht unentschieden!!!\n\n", comSelect); |
|
|
|
break; |
|
|
|
case(1): printf("Der Computer hat %d gewaehlt, Du hast gewonnen!!!\n\n", comSelect); |
|
|
|
break; |
|
|
|
default: printf("Error!"); |
|
|
|
} |
|
|
|
} |