python求水仙花个数
时间: 2023-07-22 21:03:12 浏览: 93
水仙花数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。换句话说,如果一个数是水仙花数,那么它满足以下条件:
153 = 1^3 + 5^3 + 3^3
我们可以使用Python编写程序来求解水仙花数的个数。以下是一个示例代码:
```python
def is_armstrong_number(num):
# 将数字转换为字符串,以便逐个获取每个位上的数字
num_str = str(num)
n = len(num_str)
# 计算每个位上数字的n次幂之和
armstrong_sum = sum(int(digit) ** n for digit in num_str)
# 判断是否满足条件
if armstrong_sum == num:
return True
else:
return False
def count_armstrong_numbers(start, end):
count = 0
for num in range(start, end+1):
if is_armstrong_number(num):
count += 1
return count
# 输入起始和结束数字
start_num = int(input("请输入起始数字:"))
end_num = int(input("请输入结束数字:"))
# 调用函数计算水仙花数的个数
count = count_armstrong_numbers(start_num, end_num)
print("在区间 [{}, {}] 内共有 {} 个水仙花数。".format(start_num, end_num, count))
```
你可以根据需要修改起始和结束数字,然后运行程序来求解水仙花数的个数。
阅读全文