水仙花数

  • 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)
  • 代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
a = 1
while a < 10:
b = 0
while b < 10:
c = 0
while c < 10: #while嵌套循环100-1000数字
d = int(str(a) + str(b) + str(c))
if a**3 + b**3 + c**3 == d: #判断水仙花数
print(d) #输出水仙花数
c += 1
b += 1
a += 1

153
370
371
407
1
2
3
4
5
6
7
8
9
10
11
for i in range(100,1000):
a = i // 100
b = i // 10 % 10
c = i % 10
if a**3 + b**3 + c**3 == i:
print(i)

153
370
371
407