Python程序检查数字是否为强数


强数是指其所有数字阶乘之和等于数字“n”的数。阶乘是指找到包括该数字在内的所有小于该数字的数字的乘积,并用!(感叹号)表示,例如:5!= 5x4x3x2x1 = 120。当需要检查一个数字是否为强数时,可以使用余数/模运算符和“while”循环。

以下是相同的演示 -

示例

 在线演示

my_sum=0
my_num = 296
print("The number is")
print(my_num)
temp = my_num
while(my_num):
   i=1
   fact=1
   remainder = my_num%10
   while(i<=remainder):
      fact=fact*i
      i=i+1
   my_sum = my_sum+fact
   my_num=my_num//10
if(my_sum == temp):
   print("The number is a strong number")
else:
   print("The number is not a strong number")

输出

The number is
296
The number is not a strong number

解释

  • 将一个和初始化为0。

  • 定义数字并在控制台上显示。

  • 将数字定义为一个临时变量。

  • 使用while循环确定余数。

  • 再次使用while循环查看迭代器是否小于或等于余数。

  • 如果小于,则将“fact”变量乘以迭代器。

  • 然后将其递增1。

  • 将和值添加到“fact”变量。

  • 如果“temp”变量和和相等,则认为它是一个强数。

更新于:2021年4月19日

7K+ 次浏览

开启你的职业生涯

通过完成课程获得认证

开始学习
广告