Answered step by step
Verified Expert Solution
Link Copied!

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

image text in transcribedimage text in transcribedimage text in transcribedimage text in transcribed

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

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

Recommended Textbook for

SQL Antipatterns Avoiding The Pitfalls Of Database Programming

Authors: Bill Karwin

1st Edition

1680508989, 978-1680508987

More Books

Students also viewed these Databases questions