水仙花数是指一个 3 位数,其各位上数字的 立方和等于它本身。
方法1:
用 for循环 控制1000以内的3位数,依次求出该3位数中的个十百位,判断是否是水仙花数。
print('='*50)
print('100到1000之间所有的水仙花数)
for i in range(100,1000):
x=i//100 #取百位数
y=i//10%10 #取十位数
z=i%10 #取个位数
if x**3+y**3+z**3==i:
print(f'{i}是水仙花数')
方法2:用while循环
num=100
while num<1000:
x=num//100 #取百位数
y=num//10%10 #取十位数
z=num%10 #取个位数
if x**3+y**3+z**3==num:
print(num)
num+=1