# Yahtzee
# Write a function yahtzee_result that consumes dice values
# (integers between 1 and 6, inclusive) d1,d2,d3,d4,d5
# where d1<=d2<=d3<=d4<=d5
# and produces
# 'Yahtzee' if all five dice are the same
# 'Four of a Kind' if four of the five dice are the same
# 'Full House' if there are three of one value, and two of a different value
# 'Large Straight' if values d1,d2,d3,d4,d5 are consecutive integers
# 'Chance' if none of the above apply

## yahtzee_result(d1,d2,d3,d4,d5) produces one of
##   "Yahtzee", "Four of a Kind", "Full House",
##   "Large Straight", or "Chance"
##   depending on the values of d1,d2,d3,d4,d5
## yahtzee_result: Nat Nat Nat Nat Nat -> Str
## requires: 1 <= d1 <= d2 <= d3 <= d4 <= d5 <= 6
## Examples:
## yahtzee_result(5,5,5,5,5) => "Yahtzee"
## yahtzee_result(2,3,4,5,6) => "Large Straight"
## yahtzee_result(2,3,5,5,6) => "Chance"
def yahtzee_result(d1,d2,d3,d4,d5):
    #Fill in the blanks below.
    result = "Chance" #default option
    if (d1 == d5):
        result = "Yahtzee"
    elif (d1 == d4) or (d2 ==d5):
        result = "Four of a Kind"
    elif True: #Condition for full house:
        result = "Full House"
    elif True: #Condition for large straight:
        result = "Large Straight"    
    return result






#See if you can figure out what's wrong with 
#these partial codes (in the cases that are defined):
def yahtzee_result_2(d1,d2,d3,d4,d5):
    choice = "Chance"
    if (d1 == d5):
        choice =  "Yahtzee"
    if ((d1==d2==d3) and (d4 ==d5)) or \
       (d1 ==d2 and d3==d4==d5):
        choice =  "Full House"
    return choice

def yahtzee_result_3(d1,d2,d3,d4,d5):
    if ((d1==d2==d3) and (d4 ==d5)) or \
       (d1 ==d2 and d3==d4==d5): 
        return "Full House"
    if (d1 == d5):
        return "Yahtzee"