Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Part II: Blackjack Dice (20 points) For this part you will implement a two-player version of the card game Blackjack but with six-sided dice instead
Part II: Blackjack Dice (20 points) For this part you will implement a two-player version of the card game Blackjack but with six-sided dice instead of playing cards. The function blackjack.dice) will simulate the game with no interaction from the user The game rules are as follows . Players take turns "rolling" two six-sided dice, each accumulating a running total. We will see later how the rolling of dice will be simulated If a player's total is less than 16, the player must roll the dice and add the total to his score If a player's total is greater than or equal to 16, the player does not roll the dice. If a player's total equals exactly 21, the game ends immediately with a win for that player . If a player's total becomes greater than 21 ("busting"), the game ends immediately with a win for the other player. Thus, players continue rolling dice and accumulating totals while all of the following conditions are true o Neither player has reached 21 exactly o Neither player has busted (exceeded a total of 21) o At least one player still has a score of less than 16. If the game ends with neither player hitting 21 or busting, then the player whose score is closest to 21 wins the game. In the event of a tie, the function returns the list [0, 0] The function takes a single argument, dice, which is a list of 30 or so integers in the range 1 through 6, inclusive Rolling of dice is simulated by the function by reading integers from this list two at a time. One way to keep track of which numbers the function should read next is to maintain an index variable (e.g., next-die) that is updated as values are read out. This variable would be initialized to zero at the top of the function. As an example diel - dice [next-die] die2 = dice [next die+1] next die += 2 # update a player's score using diel-die 2 Once a game-ending condition has been reached, the function returns a list that contains two values: first, the number of the player who won (1 or 2) and second, the score of the winning player. A few runs of the game are given below with print statements that illustrate how the games proceed. Your solution should not contain print statements. However, while working on your solution you may find it helpful to include such print statements. Sample Garne Run #1 : Player 1 wins by earning a score closer to 21 than Player 2 Dice: [5, 1, 6, 1, 1, 3, 3, 6, 5, 5, 1, 2, 2, 2, 6, 1, 3, 2, 6, 2, 3, 6, 4, Player 1's score: 0 2, 4, 2, 4, 2, 3, 6] Player 1 rolled: 5 1 Player 1's new score: 6
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started