49 lines
1.0 KiB
C++
49 lines
1.0 KiB
C++
#include "input_parsing.h"
|
|
#include "generator.h"
|
|
|
|
#include <iostream>
|
|
#include <vector>
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
auto parameters = get_params(argc, argv);
|
|
Generator gen(parameters);
|
|
|
|
std::cout << "Output:\n";
|
|
int num = gen.get_next_num();
|
|
std::vector<int> correct_guesses;
|
|
double accuracy = 100.0;
|
|
|
|
while(num != gen.NO_MORE_NUMBERS)
|
|
{
|
|
int user_guess;
|
|
std::cout << "What's your guess (max= " << parameters.max_range <<"): ";
|
|
std::cin >> user_guess;
|
|
|
|
while (std::cin.fail() || user_guess < 0 || user_guess > parameters.max_range)
|
|
{
|
|
std::cin.clear();
|
|
|
|
std::cout << "Invalid number introduced\n";
|
|
std::cin >> user_guess;
|
|
}
|
|
|
|
std::cout << "Next\n";
|
|
correct_guesses.emplace_back(num);
|
|
|
|
accuracy -= abs(user_guess - num) / 100.;
|
|
accuracy = accuracy > 0 ? accuracy : -accuracy;
|
|
num = gen.get_next_num();
|
|
}
|
|
|
|
std::cout << "Final results:\nCorrect guesses: ";
|
|
for(int v: correct_guesses)
|
|
{
|
|
std::cout << v << ", ";
|
|
}
|
|
std::cout << std::endl;
|
|
|
|
std::cout << "Accuracy: " << accuracy << "%\n";
|
|
return 0;
|
|
}
|