0% found this document useful (0 votes)
6 views3 pages

Chose Your Difficulty

Uploaded by

kandukuri3456
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views3 pages

Chose Your Difficulty

Uploaded by

kandukuri3456
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Chose your difficulty

 Normal 😎: Use all Hints below to complete the project.

 Hard 🤔: Use only Hints 1, 2, 3 to complete the project.

 Extra Hard 😭: Only use Hints 1 & 2 to complete the project.

 Expert 🤯: Only use Hint 1 to complete the project.

Our Blackjack Game House Rules

 The deck is unlimited in size.

 There are no jokers.

 The Jack/Queen/King all count as 10.

 The Ace can count as 11 or 1.

 Use the following list as the deck of cards:

cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]

 The cards in the list have equal probability of being drawn.

 Cards are not removed from the deck as they are drawn.

 The computer is the dealer.

Go to this website and try out the Blackjack game:

https://games.washingtonpost.com/games/blackjack/

Then try out the completed Blackjack project here:

https://appbrewery.github.io/python-day11-demo/

Read this breakdown of program requirements:

http://listmoz.com/view/6h34DJpvJBFVRlZfJvxF

Then try to create your own flowchart for the program.

Download and read this flow chart I've created:

https://drive.google.com/uc?
export=download&id=1rDkiHCrhaf9eX7u7yjM1qwSuyEk-rPnt

Create a deal_card() function that uses the List below to return a random
card.
cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]

Remember that 11 is the Ace.

Deal the user and computer 2 cards each using deal_card() and append().

user_cards = []

computer_cards = []

Create a function called calculate_score() that takes a List of cards as input


and returns the sum of all the cards in the List as the score. Google
the sum() function to help you do this.

Inside calculate_score() check for a blackjack (a hand with only 2 cards: ace
+ 10) and return 0 instead of the actual score. 0 will represent a blackjack in
our game.

Inside calculate_score() check for an 11 (ace). If the score is already over 21,
remove the 11 and replace it with a 1. You might need to Google to find the
documentation on the Python built-in functions append() and remove().

https://developers.google.com/edu/python/lists#list-methods

Call the function calculate_score(). If the computer or the user has a


blackjack (0) or if the user's score is over 21, then the game ends.

If the game has not ended, ask the user if they want to draw another card. If
yes, then use the deal_card() function to add another card to
the user_cards List. If no, then the game has ended.

The score will need to be rechecked with every new card drawn and the
checks in Hint 9 need to be repeated until the game ends.

Once the user is done, it's time to let the computer play. The computer
should keep drawing cards as long as it has a score less than 17.

Create a function called compare() and pass in


the user_score and computer_score.

 If the computer and user both have the same score, then it's a draw.

 If the computer has a blackjack (0), then the user loses.

 If the user has a blackjack (0), then the user wins.

 If the user_score is over 21, then the user loses.

 If the computer_score is over 21, then the computer loses.


 If none of the above, then the player with the highest score wins.

Ask the user if they want to restart the game. If they answer yes, clear the
console and start a new game of blackjack and show the logo from art.py.

You might also like