python打印所有水仙花数
时间: 2023-07-05 07:33:25 浏览: 104
python 实现所有水仙花数
5星 · 资源好评率100%
水仙花数,也叫自恋数或自幂数,是指一个n位数(n≥3),其各位数字的n次方之和等于该数本身。例如,153是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。以下是打印所有的3位水仙花数的Python代码:
```python
for i in range(100, 1000):
sum = 0
temp = i
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if i == sum:
print(i)
```
运行结果为:
```
153
370
371
407
```
其中,使用 `range(100, 1000)` 生成 100 到 999 的整数序列,使用循环和条件语句,逐个判断每个数是否为水仙花数。具体实现是将每个数的个位、十位、百位上的数字分离出来,分别计算它们的立方和,最后判断原数是否等于这个立方和。如果是,就打印出这个数。
阅读全文