15-110 PA3 Sample Solutions - Spring 2018 1. def p_quadruple(a, b, c, d): if (a**2 + b**2 + c**2 == d**2): return True else: return False 2. def smallest(x, y, z): if x < y: if x < z: result = x else: result = z else: if y < z: result = y else: result = z return result 3. def nth_fib(n): if n == 1: return 0 if n == 2: return 1 y = 0 z = 1 for i in range(n-2): x = y y = z z = x + y return z def fib_finder(value): y = 1 z = 2 while (z <= value): x = y y = z z = x + y return z 4. def make_square(size): for i in range(size-1): print("*",end="") print("*") for i in range(size-2): print("*", end="") for j in range(size-2): print(" ", end="") print("*") for i in range(size-1): print("*",end="") print("*") 5. def paytable(rate): for hours in range(20, 61, 5): print(hours, end=" hours: ") if hours > 40: pay = 40*rate + (hours-40)*rate*2 else: pay = hours*rate if (pay < 1000): print("$ ", end="") else: print("$", end="") print(pay) return None