Bắt đầu ngayBắt đầu miễn phí

Cù lũ (Full house)

Quay lại với trò poker nhé. Lần trước, bạn đã tính xác suất có ít nhất một đôi. Lần này, chúng ta quan tâm đến cù lũ (full house). Cù lũ là khi bạn có hai lá bài khác chất nhưng cùng giá trị số, và ba lá bài khác (khác chất) cùng một giá trị số khác (ví dụ: 2 cơ & bích, và 3 lá J rô, tép & bích).

Do đó, cù lũ là xác suất rút được đúng ba lá cùng giá trị, với điều kiện đồng thời rút được đúng hai lá cùng một giá trị khác. Sử dụng lại đoạn mã như trước, hãy chỉnh điều kiện thành công để có đầu ra mong muốn. Bài tập này sẽ giúp bạn ước lượng xác suất có điều kiện trong trò chơi bài và xây dựng nền tảng để mô hình hóa các bài toán trừu tượng cho mô phỏng.

Bài tập này là một phần của khóa học

Mô phỏng Thống kê bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Xáo trộn deck_of_cards.
  • Dùng một dictionary với .get() để đếm số lần xuất hiện của mỗi lá bài trong tay.
  • Tăng biến đếm full_house khi trong tay có cù lũ (2 lá cùng giá trị này, 3 lá cùng giá trị khác).

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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))
Chỉnh sửa và Chạy Mã