day1/exercise/aliquot.py
changeset 354 5dc6c3673f9d
parent 94 8c92864c184b
child 380 669b72283b55
equal deleted inserted replaced
353:8999d0a3fc9d 354:5dc6c3673f9d
     1 def is_perfect_square(n):
       
     2     i = 1
       
     3     while i * i < n:
       
     4         i += 1
       
     5     return i * i == n, i
       
     6 
     1 
     7 def aliquot(n):
     2 def aliquot(n):
     8     sum = 1
     3     sum = 1
     9     i = 2
     4     i = 2
    10 
     5 
    11     is_ps, root = is_perfect_square(n)
     6     while i * i < n: 
    12     while i < root:
       
    13         if n % i == 0:
     7         if n % i == 0:
    14             sum += i + (n / i)
     8             sum += i + (n / i)
    15         i += 1
     9         i += 1
       
    10     if n % i == 0: sum += i
    16     return sum
    11     return sum
    17 
    12 
    18 n = int(raw_input('Enter a number? '))
    13 n = int(raw_input('Enter a number? '))
    19 print aliquot(n)
    14 print aliquot(n)