欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

判断一个数是否是水仙花数

程序员文章站 2022-03-10 12:52:06
水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例 ......

 

水仙花数(narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, ppdi)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

常见的有

水仙花数又称阿姆斯特朗数。
三位的水仙花数共有4个:153,370,371,407;
四位的四叶玫瑰数共有3个:1634,8208,9474;
五位的五角星数共有3个:54748,92727,93084;
六位的六合数只有1个:548834;
七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;
八位的八仙数共有3个:24678050,24678051,88593477
 1 while 1:
 2     num = input("请输入一个三为数字:")
 3     if len(num) == 3 and num.isdigit():
 4         sum = 0
 5         for el in num:
 6             sum += int(el)**3
 7         if int(num) == sum:
 8             print("%s 是水仙花数" % num)
 9             break
10         else:
11             print("%s 不是水仙花数" % num)
12             break
13     else:
14         continue