From aa5f59c32eb1f0bc6a9efb99060b8e9c768e4883 Mon Sep 17 00:00:00 2001 From: KUchy Date: Fri, 13 Aug 2021 03:17:44 +0200 Subject: [PATCH] Adding Rock Paper Scissors program --- CPP/miscelanious/rps/a.out | Bin 0 -> 29080 bytes CPP/miscelanious/rps/rockpaperscissors.cpp | 67 +++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100755 CPP/miscelanious/rps/a.out create mode 100644 CPP/miscelanious/rps/rockpaperscissors.cpp diff --git a/CPP/miscelanious/rps/a.out b/CPP/miscelanious/rps/a.out new file mode 100755 index 0000000000000000000000000000000000000000..14569a68387e40a169432f295d4e5276f7483f1b GIT binary patch literal 29080 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 B<+uO< literal 0 HcmV?d00001 diff --git a/CPP/miscelanious/rps/rockpaperscissors.cpp b/CPP/miscelanious/rps/rockpaperscissors.cpp new file mode 100644 index 0000000..47b4b45 --- /dev/null +++ b/CPP/miscelanious/rps/rockpaperscissors.cpp @@ -0,0 +1,67 @@ +#include +#include + +std::vector WIN_MESSAGE = {"It's a draw!", "Player One Won!", "Player Two Won!"}; + +void print(const std::string s) +{ + std::cout << s << std::endl; +} + +int playerChoose(const bool playerNumber) +{ + int playerChoice; + if (playerNumber == 0) print("Player one choose: \n[1] Rock \n[2] Paper \n[3] Scissors"); + else print("Player one choose: \n[1] Rock \n[2] Paper \n[3] Scissors"); + std::cin >> playerChoice; + return playerChoice; +} + +void playerOneWins() +{ + print("Player One Wins!"); +} + +void playerTwoWins() +{ + print("Player Two Wins!"); +} + +void draw() +{ + print("It's a draw!"); +} + +int whoWon(const int playerOneChoice, const int playerTwoChoice) +{ + if( (playerOneChoice == 1 && playerTwoChoice == 3) || (playerOneChoice == 2 && playerTwoChoice == 1) || (playerOneChoice == 3 && playerTwoChoice == 2)) return 1; + else if(playerOneChoice == playerTwoChoice) return 0; + else return 2; +} + +bool tests() +{ + if(whoWon(1, 1) != 0) return 0; + if(whoWon(1, 2) != 2) return 0; + if(whoWon(1, 3) != 1) return 0; + if(whoWon(2, 1) != 1) return 0; + if(whoWon(2, 2) != 0) return 0; + if(whoWon(2, 3) != 2) return 0; + if(whoWon(3, 1) != 2) return 0; + if(whoWon(3, 2) != 1) return 0; + if(whoWon(3, 3) != 0) return 0; + return 1; +} + +int main() +{ + if(!tests()) + { + print("There is an error in program logic!"); + return -1; + } + int playerOneChoice = playerChoose(0); + int playerTwoChoice = playerChoose(1); + std::cout << WIN_MESSAGE[whoWon(playerOneChoice, playerTwoChoice)] << std::endl; + return 0; +}