diff -r 27b67b50280b -r 8c92864c184b day1/exercise/aliquot.py --- a/day1/exercise/aliquot.py Fri Oct 09 22:57:00 2009 +0530 +++ b/day1/exercise/aliquot.py Sun Oct 11 16:51:43 2009 +0530 @@ -1,8 +1,19 @@ +def is_perfect_square(n): + i = 1 + while i * i < n: + i += 1 + return i * i == n, i + def aliquot(n): - sum = 0 - for i in range(1, (n/2)+1): + sum = 1 + i = 2 + + is_ps, root = is_perfect_square(n) + while i < root: if n % i == 0: - sum += i + sum += i + (n / i) + i += 1 return sum -print aliquot(14) +n = int(raw_input('Enter a number? ')) +print aliquot(n)