如何在Python中生成Strong数?

如何在Python中生成Strong数?

要打印Strong数,首先看一下它的定义。它是一个数字,它的因子阶乘之和等于它自己。例如,145是一个Strong数。首先创建一个计算阶乘的函数:

def fact(num):
   def factorial(n):
   num = 1
   while n >= 1:
      num = num * n
      n = n - 1
   return num

你可以运行以下代码来打印这些数字:

def factorial(n):
   num = 1
   while n >= 1:
      num = num * n
      n = n - 1
   return num

def print_strong_nums(start, end):
   for i in range(start, end + 1):
      # 从数字中获取一个列表中的数字:
      digits = list(map(int, str(i)))
      total = 0
      for d in digits:
         total += factorial(d)
      if total == i:
         print(i)
print_strong_nums(1, 380)

这将输出:

1
2
145

更多Python相关文章,请阅读:Python 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程