# L-1 MCS 275 Mon 14 Jan 2008 : facnum.py

# factor a number into product of primes

N = input('give a natural number n : ')
L = []; d = 2; n = N
while(d < n):
   (q,r) = divmod(n,d)
   if(r == 0): 
      L.append(d)
      n = q; d = 2
   else:
      d = d + 1 
L.append(n)
print 'factors of ' + str(N) + ' :', L
p = reduce(lambda x,y: x*y , L)
print 'product of factors :', p
