Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Problem : In the game of craps, a pass line bet proceeds as follows. Two six-sided die are rolled: the first roll of the dice

Problem: In the game of craps, a pass line bet proceeds as follows. Two six-sided die are rolled: the first roll of the dice in a craps round is called the come out roll. A come out roll of 7 or 11 automatically wins, and a come out roll of 2, 3, or 12 automatically loses. If 4, 5, 6, 8, 9, or 10 is rolled on the come out roll that number becomes the point. The player keeps rolling the dice until either 7 or the point is rolled. If the point is rolled first, then the player wins the bet. If a 7 is rolled first, then the player loses.

Write a program that simulates a game of craps using these rules without human input. Instead of asking for a wage, the program should calculate whether the player would win or lose. The program should simulate rolling two dice and calculate the sum. Add a loop so that the program plays 10,000 games. Add counters that count how many times the player wins and how many times the player loses. At the end of the 10,000 games, compute the probability of winning (wins/ (wins + losses)) and output this value.

Note: to simulate the dice rolling use the Random class to generate numbers between 1 and 6 inclusive.

Here is an example series:

The shooter throws the dice on a come out roll, which starts a new series, and a 5 is rolled. (Recall that rolling a 7 or 11 would have been winners and 2, 3, or 12 would have been losers.)

The shooter has established a point of 5.

The shooter throws the dice again and rolls an 8.

Nothing happens and player rolls the dice again.

The shooter throws the dice again and rolls a 3. (Note that rolling a 2, 3, 11, or 12 after a point is established means nothing)

The shooter throws the dice again and rolls a 5.

This is the shooter's point so this is a win and the series ends.

Your program should:

Declare the variables numOfWins and numOfLoss to keep track of the number of times player wins or loses.

Add a loop to your program so that the game is played 10,000 times.

Add another loop so the player can start a new set of games.

Declare a constant for the number of games being played. (10,000)

Simulate rolling the two dice and calculate the sum. This first roll will establish the comeOutRoll. (use the Random class to generate random numbers for the dice)

Pass this first comeOutRoll to a method called winOrLose. This method will return a string. If it returns: < >seven means a loss. therefore the variable numOfLoss must be incremented in the main methodthe point means a win. Therefore, the variable numOfWin must be incremented in the main method.win: means a win. Then the variable numOfWins must be incremented in the main method.

loss: means a loss then the variable numOfLoss must be incremented in the main method.

The Point: means a point has been established. Therefore set the variable thePoint to the comeOutRoll. Then the method keepRolling must be called to roll the dice until a 7 or the point is rolled. This method will return a string:

At the end of the 10,000 games, call the method winProbability to compute the probability of winning (wins/wins + losses)

Output the value returned

Ask the user if she/he wants to start a new game.

Output a good by message if the user does not want to play again.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions

Question

What do Dimensions represent in OLAP Cubes?

Answered: 1 week ago