如何用Python编写代码来找出并打印100到1000范围内的所有水仙花数?
时间: 2024-10-22 13:25:54 浏览: 14
python 找出100~999之间的所有水仙花数 示例
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。在Python中,你可以通过遍历100到1000这个范围,对每个数检查是否满足条件来找到所有的水仙花数。下面是一个简单的代码示例:
```python
def find_water_lily_numbers(start, end):
water_lilies = []
for num in range(start, end + 1):
# 将数字转换为字符串以便提取每一位
str_num = str(num)
# 检查数字是否为三位数
if len(str_num) != 3:
continue
# 计算各位数字的立方和
digit_sum = int(str_num[0]) ** 3 + int(str_num[1]) ** 3 + int(str_num[2]) ** 3
# 如果和等于原数,添加到列表中
if digit_sum == num:
water_lilies.append(num)
return water_lilies
# 找出100到1000之间的水仙花数并打印
water_lily_numbers_100_to_1000 = find_water_lily_numbers(100, 1000)
print("100到1000范围内的水仙花数有:", water_lily_numbers_100_to_1000)
阅读全文