this function mean a*b, z is x time multiply.
def naive(a, b): x = a; y = b z = 0 while x > 0: z = z + y x = x - 1 return z print(naive(4, 5))
def russian(a, b): x = a; y = b z = 0 while x > 0: if x % 2 == 1: z = z + y y = y << 1 x = x >> 1 return z print(russian(5, 5))