One of the most popular games of chance is a dice game known as "craps", played in casinos around the world. Here are the rules of the game:
A player rolls two six-sided die, which means he can roll a 1, 2, 3, 4, 5 or 6 on either die. After the dice come to rest they are added together and their sum determines the outcome.
If the sum is 7 or 11 on the first roll, the player wins. If the sum is 2, 3, or 12 on the first roll, the player loses (this is called "craps").
If the player rolls 4, 5, 6, 8, 9, or 10 on the first throw, then that becomes the player's "point". To win, the player must "make their point", that means that they must roll the sum they got on that first throw, so they keep rolling the dice. The player loses by rolling a 7 before making the point.
Part 1: The basic program
a) Write a flow chart or pseudo code for part 1 of the homework.
b) Write a C++ program that simulates the playing of this game with two players. You will need:
1. An introduction to your program with instructions and your name.
2. The players are prompted for a random number seed.
3. A function that generates the random numbers and prints the results to the interface. Two separate random numbers must be generated for the two die, not the sum. This function returns the toss of one die after the user is prompted to tap the spacebar.
4. The program alternates players rolling the die.
5. The program keeps track of the number of wins for each player.
6. The program tells the users if player 1 or 2 wins after 3 points are won.
7. Write the output to a file.
Part 2: Wagering
The program must ask the users if they want to gamble. This option will bypass a finite limit number of plays. Both players start with a bank balance of $1000 dollars.
Each turn, players are asked to enter a minimum wager of $100. If the player wins, the balance is increased by the wager, if they lose, it is decreased.
The program continues as long as the player has a positive bank balance, and they cannot wager more than is in the bank. When they lose, give a message like "Player X, you're busted!", and you can send other messages.