ajout architecture
This commit is contained in:
120
projets/BLACKJACK.md
Normal file
120
projets/BLACKJACK.md
Normal file
@@ -0,0 +1,120 @@
|
||||
```python
|
||||
import os
|
||||
import random
|
||||
|
||||
deck = [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]*4
|
||||
|
||||
def deal(deck):
|
||||
hand = []
|
||||
for i in range(2):
|
||||
random.shuffle(deck)
|
||||
card = deck.pop()
|
||||
if card == 11:card = "J"
|
||||
if card == 12:card = "Q"
|
||||
if card == 13:card = "K"
|
||||
if card == 14:card = "A"
|
||||
hand.append(card)
|
||||
return hand
|
||||
|
||||
def play_again():
|
||||
again = input("Do you want to play again? (Y/N) : ").lower()
|
||||
if again == "y":
|
||||
dealer_hand = []
|
||||
player_hand = []
|
||||
deck = [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]*4
|
||||
game()
|
||||
else:
|
||||
print("Bye!")
|
||||
exit()
|
||||
|
||||
def total(hand):
|
||||
total = 0
|
||||
for card in hand:
|
||||
if card == "J" or card == "Q" or card == "K":
|
||||
total+= 10
|
||||
elif card == "A":
|
||||
if total >= 11: total+= 1
|
||||
else: total+= 11
|
||||
else: total += card
|
||||
return total
|
||||
|
||||
def hit(hand):
|
||||
card = deck.pop()
|
||||
if card == 11:card = "J"
|
||||
if card == 12:card = "Q"
|
||||
if card == 13:card = "K"
|
||||
if card == 14:card = "A"
|
||||
hand.append(card)
|
||||
return hand
|
||||
|
||||
def clear():
|
||||
if os.name == 'nt':
|
||||
os.system('CLS')
|
||||
if os.name == 'posix':
|
||||
os.system('clear')
|
||||
|
||||
def print_results(dealer_hand, player_hand):
|
||||
clear()
|
||||
print ("The dealer has a " + str(dealer_hand) + " for a total of " + str(total(dealer_hand)))
|
||||
print ("You have a " + str(player_hand) + " for a total of " + str(total(player_hand)))
|
||||
|
||||
def blackjack(dealer_hand, player_hand):
|
||||
if total(player_hand) == 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Congratulations! You got a Blackjack!\n")
|
||||
play_again()
|
||||
elif total(dealer_hand) == 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Sorry, you lose. The dealer got a blackjack.\n")
|
||||
play_again()
|
||||
|
||||
def score(dealer_hand, player_hand):
|
||||
if total(player_hand) == 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Congratulations! You got a Blackjack!\n")
|
||||
elif total(dealer_hand) == 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Sorry, you lose. The dealer got a blackjack.\n")
|
||||
elif total(player_hand) > 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Sorry. You busted. You lose.\n")
|
||||
elif total(dealer_hand) > 21:
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Dealer busts. You win!\n")
|
||||
elif total(player_hand) < total(dealer_hand):
|
||||
print_results(dealer_hand, player_hand)
|
||||
#print ("Sorry. Your score isn't higher than the dealer. You lose.\n")
|
||||
elif total(player_hand) > total(dealer_hand):
|
||||
print_results(dealer_hand, player_hand)
|
||||
print ("Congratulations. Your score is higher than the dealer. You win\n")
|
||||
|
||||
def game():
|
||||
choice = 0
|
||||
clear()
|
||||
print ("WELCOME TO BLACKJACK!\n")
|
||||
dealer_hand = deal(deck)
|
||||
player_hand = deal(deck)
|
||||
while choice != "q":
|
||||
print ("The dealer is showing a " + str(dealer_hand[0]))
|
||||
print ("You have a " + str(player_hand) + " for a total of " + str(total(player_hand)))
|
||||
blackjack(dealer_hand, player_hand)
|
||||
choice = input("Do you want to [H]it, [S]tand, or [Q]uit: ").lower()
|
||||
clear()
|
||||
if choice == "h":
|
||||
hit(player_hand)
|
||||
while total(dealer_hand) < 17:
|
||||
hit(dealer_hand)
|
||||
score(dealer_hand, player_hand)
|
||||
play_again()
|
||||
elif choice == "s":
|
||||
while total(dealer_hand) < 17:
|
||||
hit(dealer_hand)
|
||||
score(dealer_hand, player_hand)
|
||||
play_again()
|
||||
elif choice == "q":
|
||||
print ("Bye!")
|
||||
exit()
|
||||
|
||||
if __name__ == "__main__":
|
||||
game()
|
||||
```
|
||||
45
projets/MASTERMIND.md
Normal file
45
projets/MASTERMIND.md
Normal file
@@ -0,0 +1,45 @@
|
||||
## Mastermind
|
||||
|
||||
```python
|
||||
#-*-coding: utf8 -*-
|
||||
import random
|
||||
|
||||
code = [] # code établi par l'ordinateur
|
||||
pCode = [] # code rentré par l'utilisateur
|
||||
pCode_s = "" #texte rentré par le joueur
|
||||
cInCode = 0 # couleur présente dans le code
|
||||
cInPlace = 0 # bonne couleur à la bonne place
|
||||
essais = 12 #nombre d'essais disponibles
|
||||
essai = 1 #essai actuel
|
||||
|
||||
while len(code) <4:
|
||||
code.append(random.choice(['J','B','R','V','O','N']))
|
||||
|
||||
gameOver = False
|
||||
while gameOver == False:
|
||||
print("essai", essai, "sur 12")
|
||||
pCode_s = str(input("Entrez une combinaison de couleurs(un espace entre chaque) \n"))
|
||||
pCode = pCode_s.split(' ')
|
||||
|
||||
i = 0
|
||||
while i < len(code):
|
||||
if pCode[i] == code[i]:
|
||||
cInPlace +=1
|
||||
i+=1
|
||||
i = 0
|
||||
while i < len(pCode):
|
||||
cInCode += code.count(pCode[i])
|
||||
i+=1
|
||||
|
||||
essai +=1
|
||||
print(cInPlace, " pions de bonne couleur à la bonne place")
|
||||
print(cInCode, " pions de bonne couleur")
|
||||
if cInPlace == 4 or essai == essais:
|
||||
gameOver = True
|
||||
print("Vous avez gagné !")
|
||||
print("code :", ('').join(code))
|
||||
cInCode = 0
|
||||
cInPlace = 0
|
||||
quit()
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user