编写程序,输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身python
时间: 2024-03-20 22:43:36 浏览: 18
好的,以下是Python代码实现:
```python
for num in range(100, 1000):
# 将数字转为字符串并拆分为单个数字的列表
digits = [int(digit) for digit in str(num)]
# 计算各位数字的立方和
digit_sum = sum([digit**3 for digit in digits])
# 判断是否为水仙花数
if num == digit_sum:
print(num)
```
输出结果为:
```
153
370
371
407
```
相关问题
编写程序,输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身
好的,我可以帮你编写这个程序。以下是 Python 代码实现:
```python
for num in range(100, 1000):
# 将数字拆分成个位、十位、百位
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
# 如果满足水仙花数的条件,则输出该数
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
```
这段代码通过遍历100到1000之间的所有整数,将每个数字拆分成个位、十位、百位三个数字,然后判断是否满足水仙花数的条件,如果满足就输出该数。
编写python程序,输出100-1000之间的水仙花数。所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。
好的,我已经理解了你的问题。下面是 Python 代码,用于输出 100-1000 之间的水仙花数:
``` python
for num in range(100, 1000):
# 将数字转换为字符串,并计算每个数字的立方和
sum = int(str(num)[0])**3 + int(str(num)[1])**3 + int(str(num)[2])**3
# 如果立方和等于该数字本身,则输出
if sum == num:
print(num)
```
运行以上代码,将会输出以下水仙花数:
```
153
370
371
407
```