水仙花数(Narcissistic Number)也被称为阿姆斯特朗数(Armstrong Number),它是一个特殊的数字,满足以下条件:
是一个n位数(n≥3);
它的每个位上的数字的n次幂之和等于它本身。
例如,数字153是一个三位数,其各位数字的立方和等于它本身,即1³ + 5³ + 3³ = 153。
在Python中,你可以通过以下步骤来找出所有的水仙花数:
1. 遍历所有三位数(100到999);
2. 对于每个数,分离出个位、十位和百位数字;
3. 将这些数字各自立方后相加;
4. 判断立方和是否等于原数。
下面是一个简单的Python代码示例,用于找出所有的三位水仙花数:
遍历100到999之间的所有数字
for num in range(100, 1000):
获取数字的各个位
hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
计算各位数字的立方和
sum_of_cubes = hundreds3 + tens3 + ones3
判断是否为水仙花数
if sum_of_cubes == num:
print(num)
运行这段代码,你将得到所有的三位水仙花数