MulaiMulai sekarang secara gratis

Full house

Mari kembali ke permainan poker kita. Terakhir kali, kita menghitung peluang mendapatkan setidaknya sepasang kartu dengan nilai yang sama. Kali ini kita tertarik pada full house. Full house terjadi ketika Anda mendapatkan dua kartu dari jenis (suit) yang berbeda yang memiliki nilai angka yang sama dan tiga kartu lain yang juga memiliki nilai angka yang sama (misalnya, 2 hati & sekop, serta J klub, wajik, & sekop).

Dengan demikian, full house adalah peluang mendapatkan tepat tiga kartu bernilai sama dengan syarat juga mendapatkan tepat dua kartu bernilai sama dengan nilai lain. Gunakan kode yang sama seperti sebelumnya, lalu ubah kondisi keberhasilan untuk memperoleh keluaran yang diinginkan. Latihan ini akan mengajarkan Anda mengestimasi peluang bersyarat dalam permainan kartu dan membangun dasar dalam merumuskan masalah abstrak untuk simulasi.

Latihan ini adalah bagian dari kursus

Simulasi Statistik di Python

Lihat Kursus

Petunjuk latihan

  • Kocok deck_of_cards.
  • Gunakan dictionary dengan .get() untuk menghitung kemunculan setiap kartu di tangan.
  • Tambahkan penghitung full_house ketika terdapat full house di tangan (2 dari satu nilai, 3 dari nilai lain).

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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))
Edit dan Jalankan Kode