🚧 began working on 2.1

main
Isabell Pflug 2 years ago
parent c968dc1cb4
commit feb3590398

@ -0,0 +1,66 @@
#include <iostream>
#include <cstdlib>
#include <time.h>
int check_number(char* number, int* checked_number) {
std::size_t pos;
*checked_number = std::stoi(number, &pos);
return 0;
}
int guess(int to_guess) {
std::cout << "Take a guess!" << std::endl;
char* guess;
std::cin >> guess;
int guess_number;
int check = check_number(guess, &guess_number);
if (check < 0)
return check;
if (!guess_number == to_guess) {
if (guess_number < to_guess)
std::cout << "Your number is too small.";
else
std::cout << "Your number is too big.";
return 0;
}
return 1;
}
int play(int max) {
srand(time(NULL));
int random_number = rand() % (max + 1);
int win = 0;
int tries = 0;
while (win == 0) {
tries++;
win = guess(random_number);
}
if (win < 0)
return win;
return tries;
}
int main(int argc, char *argv[]) {
int max = 10;
if (argc > 1) {
int check = check_number(argv[1], &max);
if (check < 0)
return check;
} else
std::cout << "Using default max of 10" << std::endl;
std::cout << "Do you want to play? (y/n)" << std::endl;
char* answer;
std::cin >> answer;
if (answer[0] == 'y') {
int check = play(max);
if (check < 0) {
std::cout << "Something went wrong. :/" << std::endl;
return check;
} else
std::cout << "Win after " << check << " tries." << std::endl;
}
else
std::cout << "Good night." << std::endl;
return 0;
}

@ -0,0 +1,5 @@
cmake_minimum_required(VERSION 3.11.4)
project (01)
add_executable(02_1 02_1.cpp)
#add_executable(01_2 01_2.cpp)
Loading…
Cancel
Save