hw01

py

School

University of California, Berkeley *

*We aren’t endorsed by this school

Course

61A

Subject

Electrical Engineering

Date

Apr 3, 2024

Type

py

Pages

3

Uploaded by rayleehe

Report
""" Homework 1: Control """ # Q1 from operator import add, sub def a_plus_abs_b(a, b): """Return a+abs(b), but without calling abs. >>> a_plus_abs_b(2, 3) 5 >>> a_plus_abs_b(2, -3) 5 """ if b < 0: f = a + -b else: f = a + b return f # Q2 def two_of_three(a, b, c): """Return x*x + y*y, where x and y are the two largest members of the positive numbers a, b, and c. >>> two_of_three(1, 2, 3) 13 >>> two_of_three(5, 3, 1) 34 >>> two_of_three(10, 2, 8) 164 >>> two_of_three(5, 5, 5) 50 """ x = max(a, b, c) y = 0 if x == a: y = max(b, c) elif x == b: y = max(a, c) else: y = max(a, b) return x*x + y*y # Q3 def largest_factor(n): """Return the largest factor of n that is smaller than n. >>> largest_factor(15) # factors are 1, 3, 5 5 >>> largest_factor(80) # factors are 1, 2, 4, 5, 8, 10, 16, 20, 40 40 >>> largest_factor(13) # factor is 1 since 13 is prime 1 """ factor_list = [0]
i = 1 while i < n: if n % i == 0: factor_list.append(i) i += 1 else: i += 1 return max(factor_list) # Q4 def if_function(condition, true_result, false_result): """Return true_result if condition is a true value, and false_result otherwise. >>> if_function(True, 2, 3) 2 >>> if_function(False, 2, 3) 3 >>> if_function(3==2, 3+2, 3-2) 1 >>> if_function(3>2, 3+2, 3-2) 5 """ if condition: return true_result else: return false_result def with_if_statement(): """ >>> result = with_if_statement() 2 >>> print(result) None """ if c(): return t() else: return f() def with_if_function(): """ >>> result = with_if_function() 1 2 >>> print(result) None """ return if_function(c(), t(), f()) def c(): return False def t(): print(1) def f(): print(2)
# Q5 def hailstone(n): """Print the hailstone sequence starting at n and return its length. >>> a = hailstone(10) 10 5 16 8 4 2 1 >>> a 7 """ print(n) if n == 1: return 1 elif n % 2 == 0: return 1 + hailstone(n//2) else: return 1 + hailstone(n*3 + 1) # Q6 quine = """ "*** YOUR CODE HERE ***" """
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help