Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Object-oriented Programming / 07-Practice-05.04.2022 / source.cpp
diff options
context:
space:
mode:
Commit27cf6165d0592f842ed667a8da3013489213c2a1 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-04-06 11:03:55 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-04-06 11:03:55 +0300
Files8f619fbcb516887410b11d695a7cd381e90125c3 /Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp
uni-projects-27cf6165d0592f842ed667a8da3013489213c2a1.tar
uni-projects-27cf6165d0592f842ed667a8da3013489213c2a1.tar.gz
uni-projects-27cf6165d0592f842ed667a8da3013489213c2a1.zip
Parent6ec95b5d689aa38b373ef948ba67ba59235c0eb9 (diff)
Separated NumberGamble game into its own set of header and cpp files
1 files changed, 2 insertions, 86 deletions
-rw-r--r--Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp88
diff --git a/Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp b/Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp
index 16caf87..4b5a7b9 100644
--- a/Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp
+++ b/Year 1/Object-oriented Programming/07-Practice-05.04.2022/source.cpp
@@ -1,91 +1,7 @@
-#include "Game.h"
-#include "NumberHelpers.h"
-
-bool gameCase_evenOrOdd(double& bet) {
- int rnd = getRandomBetween(1, 100);
- std::cout << "Is the number [e]ven or [o]dd? ";
- char buffer;
- std::cin >> buffer;
-
- while (buffer != 'e' && buffer != 'o') {
- std::cout << "Unknown option '" << buffer << "', choice must be either 'e' or 'o'." << std::endl << "Is the number [e]ven or [o]dd? ";
- std::cin >> buffer;
- }
-
- bool result = isEven(rnd) == (buffer == 'e');
- bet = (result) ? bet / 5 : 0;
- std::cout << "The number was: " << rnd << std::endl;
- return result;
-}
-
-bool gameCase_isPrime(double& bet) {
- int rnd = getRandomBetween(1, 100);
-
- bool result = isPrime(rnd);
- bet = (result) ? bet / 2 : 0;
- std::cout << "The number was: " << rnd << std::endl;
- return result;
-}
-
-bool gameCase_isPowerOfTwo(double& bet) {
- int rnd = getRandomBetween(1, 100);
-
- bool result = isPowerOfTwo(rnd);
- bet = (result) ? bet / 2 : 0;
- std::cout << "The number was: " << rnd << std::endl;
- return result;
-}
-
-bool gameCase_higherOrLower(double& bet) {
- int rnd = getRandomBetween(1, 100);
-
- std::cout << "Your number [20...60] ";
- int num;
- std::cin >> num;
-
- while (num < 20 || num > 60) {
- std::cout << "Number not in range! Enter number [20...60] ";
- std::cin >> num;
- }
-
- std::cout << num << " will be [h]igher or [l]ower than random? ";
- char guess;
- std::cin >> guess;
-
- while (guess != 'h' && guess != 'l') {
- std::cout << "Invalid option '" << guess << "', must be either 'h' or 'l'." << std::endl << num << " will be [h]igher or [l]ower than random? ";
- std::cin >> guess;
- }
-
- bool result = (rnd > num) == (guess == 'h');
- bet = (result) ? bet / 4 : 0;
- std::cout << "The number was: " << rnd << std::endl;
- return result;
-}
-
-bool gameCase_guess(double& bet) {
- int rnd = getRandomBetween(1, 100);
-
- std::cout << "Your guess: ";
- int num;
- std::cin >> num;
-
- bool result = num == rnd;
- bet = (result) ? bet * 10 : 0;
- std::cout << "The number was: " << rnd << std::endl;
- return result;
-}
+#include "Player.h"
+#include "NumberGamble.h"
int main() {
- GameCase numberGambleCases[] = {
- GameCase('e', "Guess if random is an even or odd number. [WIN: bet/4]", gameCase_evenOrOdd),
- GameCase('p', "Guess if random is a prime number. [WIN: bet/2]", gameCase_isPrime),
- GameCase('t', "Guess if random is a power of two. [WIN: bet*2]", gameCase_isPowerOfTwo),
- GameCase('h', "Guess if random is higher or lower than a number. [WIN: bet/4]", gameCase_higherOrLower),
- GameCase('g', "Guess random. [WIN: bet*10]", gameCase_guess)
- };
- Game numberGamble(numberGambleCases, 5);
-
Player yorgus("Yorgus", "yorgus", 23, 57741.39);
char buffer = '\0';