Question: Write a PROLOG program. Not other language, only PROLOG. Test Units are: test(better_poker_hand) :- better_poker_hand( [card(diamond, 10), card(club, 2), card(heart, ace), card(spade, ace), card(diamond, king)],
Write a PROLOG program.
Not other language, only PROLOG.

Test Units are:
test(better_poker_hand) :-
better_poker_hand(
[card(diamond, 10), card(club, 2), card(heart, ace), card(spade, ace), card(diamond, king)],
[card(heart, 2), card(heart, 3), card(heart, 4), card(heart, 5), card(heart, 6)],
[card(heart, 2), card(heart, 3), card(heart, 4), card(heart, 5), card(heart, 6)]
),
better_poker_hand(
[card(heart, 5), card(spade, queen), card(heart, king), card(diamond, king), card(spade, 7)],
[card(diamond, 5), card(spade, king), card(diamond, queen), card(club, queen), card(club, 7)],
[card(heart, 5), card(spade, queen), card(heart, king), card(diamond, king), card(spade, 7)]
),
better_poker_hand(
[card(heart, 5), card(spade, queen), card(heart, ace), card(diamond, 4), card(spade, 7)],
[card(diamond, 5), card(spade, king), card(diamond, queen), card(club, jack), card(club, 7)],
[card(heart, 5), card(spade, queen), card(heart, ace), card(diamond, 4), card(spade, 7)]
).
i) Write a program for the relation better_poker_hand(Hand1, Hand2, Hand) that succeeds if Hand is the better poker hand between Hand1 and Hand2. For those unfamiliar with this card game, here are some rules of poker necessary for answering this exercise: (a) The order of cards is 2,3,4,5,6,7,8,9,10, jack, queen, king, ace. (b) Each hand consists of five cards. (c) The rank of hands in ascending order is no pairs
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
