Python 输入所有水仙花数
时间: 2023-08-02 14:29:15 浏览: 130
水仙花数是指一个三位数各个位上数字的立方和等于该数本身,例如 153 就是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。可以使用 for 循环和条件判断来计算所有的水仙花数。具体实现代码如下:
```
for i in range(100, 1000):
s = str(i)
if int(s[0])**3 + int(s[1])**3 + int(s[2])**3 == i:
print(i)
```
在这个例子中,我们使用 for 循环遍历 100 到 999 的所有三位数,然后将每个数转换为字符串类型并使用条件判断判断该数是否为水仙花数。如果是水仙花数,则使用 `print` 函数输出该数。
相关问题
用Python写所有水仙花数
在Python中,水仙花数是指那些等于其各位数字立方之和的三位数。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是一个简单的函数,用于找出所有的水仙花数:
```python
def find_water_lilies(max_num):
# 判断输入是否为正整数
if max_num < 100:
return []
def is_lyric_number(num):
digits = [int(digit) for digit in str(num)]
return num == sum([digit**3 for digit in digits])
water_lilies = []
for i in range(100, max_num+1):
if is_lyric_number(i):
water_lilies.append(i)
return water_lilies
# 找出100到999范围内的所有水仙花数
water_flowers = find_water_lilies(1000)
print("水仙花数有:", water_flowers)
python输入水仙花数
水仙花数是指一个三位数,其各位数字立方和等于该数本身。下面是输入水仙花数的 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)
```
运行结果为:
```
153
370
371
407
```
阅读全文