def palindromicCube (): for i in range (1000, 10000): if (not isPalindromic (i)) and (isPalindromic (i * i * i)): print i return def isPrime (n): limit = int (n ** 0.5 + 1) for i in range (2, limit): if (n % i == 0): return False return True def sumDivisors (n): sum = 0 for i in range (1, n/2 + 1): if ( n % i == 0): sum = sum + i return sum def isPerfect (n): return n == sumDivisors (n) def printPerfectNums (n): for i in range (1, n + 1): if (isPerfect(i)): print i def isPalindromic (n): return reverseNum(n) == n def reverseNum (n): revNum = 0 while (n> 0): revNum = revNum * 10 + (n % 10) n = n / 10 return revNum def sumDigits (n): sum = 0 while (n > 0): sum = sum + (n % 10) n = n / 10 return sum def main(): ''' n = input ("Enter a number: ") print sumDigits (n) print reverseNum (n) if (isPalindromic(n)): print "Number is palindromic" else: print "Number is not palindromic" printPerfectNums (n) for i in range (2, 50): if (isPrime (i)): print i ''' palindromicCube() main()