CommencerCommencer gratuitement

Full house

Revenons à notre partie de poker. La dernière fois, nous avons calculé la probabilité d’obtenir au moins une paire. Cette fois, nous nous intéressons à un full house. Un full house correspond à deux cartes de même valeur numérique et de couleurs différentes, et trois autres cartes d’une autre valeur numérique identique (par exemple, 2 de cœur et de pique, et trois valets de trèfle, de carreau et de pique).

Ainsi, on cherche la probabilité d’obtenir exactement un brelan sachant que l’on a exactement une paire d’une autre valeur. En vous appuyant sur le même code que précédemment, modifiez la condition de succès pour obtenir le résultat souhaité. Cet exercice vous apprend à estimer des probabilités conditionnelles dans les jeux de cartes et à poser des problèmes abstraits pour la simulation.

Cet exercice fait partie du cours

Simulation statistique en Python

Afficher le cours

Instructions

  • Mélangez deck_of_cards.
  • Utilisez un dictionnaire avec .get() pour compter le nombre d’occurrences de chaque carte dans la main.
  • Incrémentez le compteur full_house lorsqu’il y a un full house dans la main (2 d’une valeur, 3 d’une autre).

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Shuffle deck & count card occurrences in the hand
n_sims, full_house, deck_of_cards = 50000, 0, deck.copy() 
for i in range(n_sims):
    ____
    hand, cards_in_hand = deck_of_cards[0:5], {}
    for card in hand:
        # Use .get() method to count occurrences of each card
        cards_in_hand[card[1]] = cards_in_hand.____(card[1], 0) + 1
        
    # Condition for getting full house
    condition = (max(cards_in_hand.values()) ==3) & (min(cards_in_hand.values())==2)
    if condition: 
        full_house ____
print("Probability of seeing a full house = {}".format(full_house/n_sims))
Modifier et exécuter le code