Pair (twee dezelfde)
Laten we nu simulaties gebruiken om kansen te schatten. Stel, je bent uitgenodigd voor een potje poker bij een vriend. In deze variant krijg je vijf kaarten en wint de speler met de beste hand. Je gebruikt een simulatie om de kans op bepaalde handen te schatten. We beginnen met de kans op minstens een pair (twee dezelfde). Dat betekent twee kaarten van verschillende kleur/soort met dezelfde numerieke waarde (bijv. 2 harten, 2 schoppen en 3 andere kaarten).
Aan het einde van deze oefening weet je hoe je simulaties inzet om kansen voor kaartspellen te berekenen.
Deze oefening maakt deel uit van de cursus
Statisticale simulatie in Python
Oefeninstructies
- Deel de hand: Schud
deck_of_cardsin de for-lus. Selecteer daarna de eerste 5 kaarten als jehand. - Tel numerieke waarden: Gebruik de methode
get()om de dictionarycards_in_handop te bouwen, die het aantal voorkomen van elkenumeric_valueinhandtelt. - Pair (twee dezelfde)? Controleer of de grootste waarde in
cards_in_handgelijk is aan of groter is dan2om te zien of we minstens een pair hebben. Zo ja, verhoogtwo_kind.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Shuffle deck & count card occurrences in the hand
n_sims, two_kind = 10000, 0
for i in range(n_sims):
____
hand, cards_in_hand = deck_of_cards[0:5], {}
for [suite, numeric_value] in hand:
# Count occurrences of each numeric value
cards_in_hand[numeric_value] = cards_in_hand.____(numeric_value, 0) + 1
# Condition for getting at least 2 of a kind
if ____ >=2:
two_kind += 1
print("Probability of seeing at least two of a kind = {} ".format(two_kind/n_sims))