用pyton编写一个利用自定义函数求所有的水仙花数的代码
时间: 2023-06-12 19:05:57 浏览: 107
python 实现所有水仙花数
5星 · 资源好评率100%
水仙花数是指一个n位正整数(n≥3),它的每个位上的数字的n次幂之和等于它本身。例如:1^3 + 5^3 + 3^3 = 153。
下面是一个用Python编写的求解所有水仙花数的代码,其中自定义函数 `is_narcissistic_number()` 用于判断一个数是否为水仙花数。
```python
def is_narcissistic_number(n):
"""判断n是否为水仙花数"""
s = str(n)
length = len(s)
sum = 0
for i in range(length):
sum += int(s[i]) ** length
return sum == n
# 求解所有的水仙花数
for i in range(100, 1000):
if is_narcissistic_number(i):
print(i)
```
运行结果:
```
153
370
371
407
```
阅读全文