How to find keith numbers using Python?

PythonProgramming

You can use the following code to find if a number is a keith number in python −

Example

def is_keith_number(n):
   # Find sum of digits by first getting an array of all digits then adding them
   c = str(n)
   a = list(map(int, c))
   b = sum(a)

   # Now check if the number is a keith number
   # For example, 14 is a keith number because:
   # 1+4 = 5
   # 4+5 = 9
   # 5+9 = 14

   while b < n:
      a = a[1:] + [b]
      b = sum(a)

   return (b == n) & (len(c) > 1)
print(is_keith_number(14))

Output

This will give the output −

True
raja
Published on 20-Apr-2018 08:56:09
Advertisements