First-Player Advantage Pig is a folk jeopardy dice game with simple rules: Two players race to reach 100 points. Each turn, a player repeatedly rolls a die until either a 1 ("pig") is rolled or the player holds and scores the sum of the rolls (i.e. the turn total). At any time during a player's turn, the player is faced with two decisions: roll - If the player rolls a 1: the player scores nothing and it becomes the opponent's turn. 2 - 6: the number is added to the player's turn total and the player's turn continues. hold - The turn total is added to the player's score and it becomes the opponent's turn. Problem: There is an advantage to going first in Pig, but how big an advantage is it for “hold at 20 or goal” play? We wish to estimate the probability of a first-player win with a hold-at-20-or-goal play policy. Simulate a given number of two-player Pig games where a player rolls until a 1 ("pig") is rolled, or the turn total is greater than or equal to 20, or the score plus the turn total is greater than or equal to 100. Report the fraction of games won by the first player. Input Format: Enter a single positive integer indicating the number of games simulated. (Larger numbers will tend to yield better estimations.) Output Format: Initially, prompt the user with "Games? ". After the simulations, print "Probability of first player win: " followed by the fraction of simulated games won by the first player Sample transcripts Games? 1000000 Probability of first player win: 0.534951
Control structures
Control structures are block of statements that analyze the value of variables and determine the flow of execution based on those values. When a program is running, the CPU executes the code line by line. After sometime, the program reaches the point where it has to make a decision on whether it has to go to another part of the code or repeat execution of certain part of the code. These results affect the flow of the program's code and these are called control structures.
Switch Statement
The switch statement is a key feature that is used by the programmers a lot in the world of programming and coding, as well as in information technology in general. The switch statement is a selection control mechanism that allows the variable value to change the order of the individual statements in the software execution via search.
Java problem
First-Player Advantage
Pig is a folk jeopardy dice game with simple rules: Two players race to reach 100 points. Each turn, a player repeatedly rolls a die until either a 1 ("pig") is rolled or the player holds and scores the sum of the rolls (i.e. the turn total). At any time during a player's turn, the player is faced with two decisions:
- roll - If the player rolls a
- 1: the player scores nothing and it becomes the opponent's turn.
- 2 - 6: the number is added to the player's turn total and the player's turn continues.
- hold - The turn total is added to the player's score and it becomes the opponent's turn.
Problem: There is an advantage to going first in Pig, but how big an advantage is it for “hold at 20 or goal” play? We wish to estimate the probability of a first-player win with a hold-at-20-or-goal play policy. Simulate a given number of two-player Pig games where a player rolls until a 1 ("pig") is rolled, or the turn total is greater than or equal to 20, or the score plus the turn total is greater than or equal to 100. Report the fraction of games won by the first player.
Input Format: Enter a single positive integer indicating the number of games simulated. (Larger numbers will tend to yield better estimations.)
Output Format:
- Initially, prompt the user with "Games? ".
- After the simulations, print "Probability of first player win: " followed by the fraction of simulated games won by the first player
Sample transcripts
Games? 1000000
Probability of first player win: 0.534951
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images