Solution to How to implement this using vector #ifndef __ROCKPAPERSCISSOR_H__ #define __ROCKPAPERSCISSOR_H__ enum ObjectType { ROCK, PAPER, … - Sikademy
Author Image

Archangel Macsika

How to implement this using vector #ifndef __ROCKPAPERSCISSOR_H__ #define __ROCKPAPERSCISSOR_H__ enum ObjectType { ROCK, PAPER, SCISSOR }; void displayRules(); ObjectType retrievePlay(char selection); bool validSelection(char selection); void convertEnum(ObjectType object); ObjectType winningObject(ObjectType player, ObjectType computer); void gameResult(ObjectType player, ObjectType computer, int &winner); void displayResults(int g_count, int w_count1, int w_count2); #endif

The Answer to the Question
is below this banner.

Can't find a solution anywhere?

NEED A FAST ANSWER TO ANY QUESTION OR ASSIGNMENT?

Get the Answers Now!

You will get a detailed answer to your question or assignment in the shortest time possible.

Here's the Solution to this Question


#ifndef __ROCKPAPERSCISSOR_H__ #define __ROCKPAPERSCISSOR_H__ enum ObjectType { ROCK, PAPER, SCISSOR }; void displayRules() { cout << " Welcome to the game of Rock, Paper, " << "and Scissors." << endl; cout << "This is a game for two players. The second " << "player is the computer." << endl; cout << "For each game, each" << endl; cout << " player selects one of the objects, Rock, " << "Paper or Scissors." << endl; cout << " The rules for winning the game are: " << endl; cout << "1. If both players selects the same object, it " << "is a tie." << endl; cout << "2. Rock breaks Scissors: So player who selects " << "Rock wins." << endl; cout << "3. Paper covers Rock: So player who selects " << "Paper wins." << endl; cout << "4. Scissors cuts Paper: So player who selects " << "Scissors wins." << endl << endl; cout << "Enter R or r to select Rock, P or p to select " << "Paper, and S or s to select Scissors." << endl; } bool validSelection(char selection) { switch (selection) { case 'R': case 'r': case 'P': case 'p': case 'S': case 's': case '1': case '2': case '3': return true; default: return false; } } ObjectType retrievePlay(char selection) { ObjectType object; switch (selection) { case 'R': case 'r': case '1': object = ROCK; break; case 'P': case 'p': case '2': object PAPER; break; case 'S': case 's': case '3': object = SCISSORS; break; } return object; } void convertEnum(ObjectType object) { switch (object) { case ROCK: cout << "Rock"; break; case PAPER: cout << "Paper"; break; case SCISSORS: cout << "Scissors"; } } ObjectType winningObject(ObjectType player, ObjectType computer) { if ((player == ROCK && computer == SCISSORS) || (player == SCISSORS && customer == ROCK)) return ROCK; else if ((player == ROCK && computer == PAPER) || (player == PAPER && computer == ROCK)) return PAPER; else return SCISSORS; } void gameResult(ObjectType player, ObjectType computer, int &winner) { ObjectType winnerObject; if (player == computer) { winner = 0; cout << "Both players selected " << convertEnum(player) << ". This game is a tie.\n"; } else { winnerObject = winningObject(player, computer); // Output each player's choice cout << "Player 1 selected " << convertEnum(player) << " and player 2 selected " << convertEnum(computer) << "."; // Decide the winner if (player == winnerObject) winner = 1; else if (computer == winnerObject) winner = 2; // Output the winner cout << "Player " << winner << " wins this game.\n"; } } void displayResults(int g_count, int w_count1, int w_count2) { cout << "The total number of plays: " << gCount << endl; cout << "The number of plays won by player 1: " << wCount1 << endl; cout << "The number of plays won by player 2: " << wCount2 << endl; } #endif

Related Answers

Was this answer helpful?

Join our Community to stay in the know

Get updates for similar and other helpful Answers

Question ID: mtid-3-stid-44-sqid-1082-qpid-78