Berikut adalah kode program dalam bahasa Indonesia yang dapat membantu Anda memainkan poker dan mengetahui tipe tangan yang Anda miliki:
# Define the suits and ranks
suits = ['S', 'H', 'D', 'C']
ranks = ['2', '3', '4', '5', '6', '7', '8', '9', 'T', 'J', 'Q', 'K', 'A']
# Function to determine the type of hand
def determine_hand(hand):
# Check for royal flush
if all(card[0] in ['K', 'Q', 'J', 'T', 'A'] and card[1] == suits[0] for card in hand):
return "royal flush"
# Check for straight flush
elif len(set([card[1] for card in hand])) == 1:
return "straight flush" if sorted([ranks.index(card[0]) for card in hand]) in [[0, 1, 2, 3, 4], [10, 11, 12, 13, 14]] else "flush"
# Check for four of a kind
elif len(set([card[0] for card in hand])) == 1:
return "four of a kind"
# Check for full house
elif len(set([card[0] for card in hand])) == 2:
return "full house"
# Check for flush
elif len(set([card[1] for card in hand])) == 1:
return "flush"
# Check for straight
elif sorted([ranks.index(card[0]) for card in hand]) in [[0, 1, 2, 3, 4], [10, 11, 12, 13, 14]]:
return "straight"
# Check for three of a kind
elif len(set([card[0] for card in hand])) == 3:
return "three of a kind"
# Check for two pairs
elif len(set([card[0] for card in hand])) == 2:
return "two pairs"
# Check for pair
elif len(set([card[0] for card in hand])) > 3:
return "pair"
# If none of the above, it's high card
else:
return "high card"
# Read input and print output
N = int(input())
for _ in range(N):
hand = [input().split() for _ in range(5)]
print(determine_hand(hand))
Kode di atas akan membaca input dari pengguna, yaitu tipe-tipe kartu poker yang dipisahkan oleh spasi. Kemudian, ia akan menghitung tipe tangan yang terbaik berdasarkan aturan poker yang didefinisikan sebelumnya. Hasilnya akan dicetak ke layar sebagai output.