Um par
Agora vamos usar simulação para estimar probabilidades. Suponha que você foi convidado para um jogo de pôquer na casa de um amigo. Nessa variação do jogo, você recebe cinco cartas, e quem tiver a melhor mão vence. Você vai usar uma simulação para estimar as probabilidades de obter certas mãos. Vamos trabalhar na estimativa da probabilidade de conseguir pelo menos um par. Um par ocorre quando você recebe duas cartas de naipes diferentes, mas com o mesmo valor numérico (por exemplo, 2 de copas, 2 de espadas e outras 3 cartas).
Ao final deste exercício, você vai saber como usar simulação para calcular probabilidades em jogos de cartas.
Este exercício faz parte do curso
Simulação Estatística em Python
Instruções do exercício
- Distribua a mão: No loop for, embaralhe
deck_of_cards. Em seguida, selecione as primeiras 5 cartas como suahand. - Conte os valores numéricos: Use o método
get()para construir o dicionáriocards_in_hand, que conta a ocorrência de cadanumeric_valueemhand. - Tem um par? Verifique se o maior valor em
cards_in_handé maior ou igual a2para ver se temos pelo menos um par. Se sim, incrementetwo_kind.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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))