写一个程序。当你输入两个三位数时会输出范围内所有的水仙花数,若在两个数范围内没有水仙花数,则输出no。
时间: 2024-09-26 21:04:04 浏览: 27
输出所有在m和n范围内的水仙花数.cpp
5星 · 资源好评率100%
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。下面是一个简单的Python程序,用于找出并打印给定范围内的所有水仙花数:
```python
def is_armstrong_number(num):
# 将数字转换为字符串以便分别获取每一位
str_num = str(num)
length = len(str_num)
# 计算各个位的立方和
sum_of_cubes = sum(int(digit) ** length for digit in str_num)
# 比较立方和是否等于原数
return num == sum_of_cubes
# 输入范围
start = int(input("请输入起始三位数(0-999): "))
end = int(input("请输入结束三位数(0-999): "))
# 遍历范围内的每个数
for i in range(start, end + 1):
if is_armstrong_number(i):
print(i)
else:
# 如果到目前为止没有找到水仙花数,检查完这个数后才输出"no"
if i == end + 1:
print("no")
阅读全文