水仙花数是各位数字的3次幂之和等于自身的三位数,如153;代码通过分离百位、十位、个位并计算立方和判断是否相等,输出153、371、407。

判断水仙花数的 Python 代码如下:
什么是水仙花数?
水仙花数(Narcissistic number)也叫阿姆斯特朗数,是指一个 3 位数,它的每个位上的数字的 3 次幂之和等于它本身。例如:153 = 13 + 53 + 33 = 1 + 125 + 27 = 153。
判断单个数是否为水仙花数
num = int(input("请输入一个三位数:"))
确保是三位数
if 100 <= num <= 999:
分离百位、十位、个位
hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
# 计算各位立方和
sum_of_cubes = hundreds**3 + tens**3 + ones**3
# 判断是否相等
if sum_of_cubes == num:
print(f"{num} 是水仙花数")
else:
print(f"{num} 不是水仙花数")else:
print("请输入一个有效的三位数")
找出所有三位水仙花数
print("三位数中的水仙花数有:")
for num in range(100, 1000):
hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
if hundreds**3 + tens**3 + ones**3 == num:
print(num)运行结果会输出:153, 371, 407(注意:实际三位水仙花数为 153、371、407,共三个)。
立即学习“Python免费学习笔记(深入)”;
基本上就这些,代码简单明了,适合初学者理解循环和条件判断的应用。











