Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,914 questions

51,847 answers

573 users

How to find all the strong numbers in given range with Python

1 Answer

0 votes
# Strong numbers are the numbers that the sum of factorial of its digits
# is equal to the original number

# 145 is a strong number: 1 + 24 + 120 = 145


def factorial(n):
    fact = 1
    for i in range(2, n + 1):
        fact = fact * i
    return fact


for n in range(1, 1000000):
    tmp = n
    summ = 0
    while tmp != 0:
        reminder = tmp % 10
        summ = summ + factorial(reminder)
        tmp //= 10
    if summ == n:
        print(n)


'''
run:

1
2
145
40585

'''

 



answered May 10, 2017 by avibootz

Related questions

1 answer 104 views
1 answer 90 views
1 answer 161 views
1 answer 90 views
1 answer 194 views
...