python输出所有的水仙花数。(水仙花数 是一个三位数,其每位上数字的立方和等于这个数。如153=1*1*1+5*5*5+3*3*3,153是水仙花 数)
时间: 2023-10-21 19:18:18 浏览: 297
好的,下面是Python代码实现:
```python
for in range(100, 1000):
a i // 100 # 百位数
b = (i // 10) % 10 # 十位数
c = i % 10 # 个位数
if a**3 + b**3 + c**3 == i:
print(i)
```
输出结果为:
```
153
370
371
407
```
相关问题
python中“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数。输出所有水仙花数
在Python中,我们可以编写一个简单的程序来找出所有的水仙花数。水仙花数是指一个三位数,其百位、十位和个位上的数字分别立方后相加等于原数。下面是一个函数,它会遍历从100到999之间的每个数,并检查是否满足水仙花条件:
```python
def find_water_lilies():
water_lilies = []
for num in range(100, 1000):
# 分解数字为百位、十位和个位
digits = [int(digit) for digit in str(num)]
# 计算各个位置的数字立方和
cube_sum = sum([digit**3 for digit in digits])
# 检查是否等于原数
if cube_sum == num:
water_lilies.append(num)
return water_lilies
# 输出水仙花数列表
water_flowers = find_water_lilies()
print("水仙花数有:", water_flowers)
Python代码输出所有的水仙花数。(水仙花数是一个三位数,其每位上数字的立方和等于这个数。如153=1*1*1+5*5*5+3*3*3,153是水仙花数)
好的,以下是Python代码实现:
```python
for i in range(100, 1000):
# 分解百位、十位、个位上的数字
a = i // 100
b = i // 10 % 10
c = i % 10
# 判断是否为水仙花数
if i == a ** 3 + b ** 3 + c ** 3:
print(i)
```
运行结果为:
```
153
370
371
407
```
阅读全文