This repository has been archived on 2024-09-24. You can view files and clone it, but cannot push or open issues or pull requests.
Schule/Sonstiges/Zahlen Raten.cpp

43 lines
1.3 KiB
C++
Raw Normal View History

2017-04-02 15:59:33 +02:00
#include<stdlib.h>
#include<time.h>
#include<iostream>
#include<conio.h>
#include<string>
#include<sstream>
2017-04-05 17:28:45 +02:00
2017-04-14 19:24:44 +02:00
//Zusatzaufgabe: Berechne die minimal notwendige Anzahl an Versuchen
2017-04-02 15:59:33 +02:00
int main()
{
2017-04-14 19:24:44 +02:00
std::string input;
2017-04-02 15:59:33 +02:00
2017-04-14 19:24:44 +02:00
do
2017-04-02 15:59:33 +02:00
{
2017-04-05 13:32:42 +02:00
srand(time(NULL));
2017-04-14 19:24:44 +02:00
short randNumber = rand()%100+1, tries = 0, number;
2017-12-05 19:23:11 +01:00
printf("Errate die richtige Zahl zwischen 1 und 100: ");
2017-04-02 15:59:33 +02:00
2017-04-14 19:24:44 +02:00
do
2017-04-05 13:38:20 +02:00
{
2017-04-14 19:24:44 +02:00
tries++;
getline(std::cin, input);
std::stringstream(input) >> number;
2017-04-02 15:59:33 +02:00
2017-12-05 19:23:11 +01:00
if(number<1 || number>100) printf("Error: Die eingegebene Zahl liegt nicht im Wertebereich. Gib eine Zahl zwischen 1 und 100 ein: ");
else if(number<randNumber) printf("\nDie eingegebene Zahl ist zu klein! Versuche es erneut: ");
else if(number>randNumber) printf("\nDie eingegebene Zahl ist zu gro\xE1! Versuche es erneut: ");
2017-04-14 19:24:44 +02:00
}while(number!=randNumber || number<1 || number>100);
2017-04-02 15:59:33 +02:00
2017-12-05 19:23:11 +01:00
printf("\nTreffer! Du hast %i Versuche gebraucht.\nM\x94 \bchtest du ein 2. mal spielen? y/n ", tries);
2017-04-14 19:24:44 +02:00
do
{
getline(std::cin, input);
2017-12-05 19:23:11 +01:00
if(input != "y" && input != "Y" && input != "n" && input !="N") printf("Error: Die Eingabe ist ung\x81ltig. M\x94 \bchtest du ein 2. mal spielen? y/n ");
else printf("\n\n");
2017-04-14 19:24:44 +02:00
}while(input != "y" && input != "Y" && input != "n" && input !="N");
}while(input == "y" || input == "Y");
2017-04-02 15:59:33 +02:00
return(0);
}