编写函数,判断一个数是否为水仙花数。调用该函数打印出 1000以内的所有水仙花数。(其中0和1不是水仙花数)
时间: 2023-12-23 09:19:36 浏览: 64
计算 1000 以内的所有水仙花数,并且打印出来
5星 · 资源好评率100%
水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。例如: 153 = 1^3 + 5^3 + 3^3。
下面是实现这个功能的 Python 代码:
```python
def is_narcissistic_number(num):
"""
判断一个数是否为水仙花数
"""
num_str = str(num)
n = len(num_str)
power_sum = sum(int(num_str[i]) ** n for i in range(n))
return power_sum == num
for num in range(100, 1000):
if is_narcissistic_number(num):
print(num)
```
输出结果为:
```
153
370
371
407
```
阅读全文