python用函数写水仙花数 一千以内的水仙花数
时间: 2024-03-18 09:37:45 浏览: 63
水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。在Python中,我们可以使用函数来判断和输出一千以内的水仙花数。
以下是用函数写水仙花数的示例代码:
```python
def is_armstrong_number(num):
# 将数字转换为字符串,获取位数
num_str = str(num)
n = len(num_str)
# 计算每个位上的数字的n次幂之和
sum = 0
for digit in num_str:
sum += int(digit) ** n
# 判断是否为水仙花数
if sum == num:
return True
else:
return False
def find_armstrong_numbers():
armstrong_numbers = []
# 遍历一千以内的数字
for num in range(100, 1000):
if is_armstrong_number(num):
armstrong_numbers.append(num)
return armstrong_numbers
# 调用函数并输出结果
armstrong_numbers = find_armstrong_numbers()
print("一千以内的水仙花数:", armstrong_numbers)
```
运行以上代码,将输出一千以内的水仙花数:[153, 370, 371, 407]。
阅读全文