python输出最小水仙花数
时间: 2023-06-15 16:05:19 浏览: 50
最小的水仙花数是153,以下是Python代码实现:
```python
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)
break
```
其中,`range(100, 1000)`表示从100到999的所有整数,`s = str(i)`将整数转换为字符串,`int(s[0])**3 + int(s[1])**3 + int(s[2])**3`计算每个数字的立方和,如果等于原数i,则为水仙花数。使用`break`退出循环,输出最小的水仙花数。
相关问题
Python输出最小水仙花数
以下是Python代码,用于输出最小的水仙花数:
```python
n = 100
while True:
s = str(n)
total = sum([int(digit)**len(s) for digit in s])
if total == n:
print(n)
break
n += 1
```
这个代码通过一个while循环来枚举所有的数字,然后计算它们是否是水仙花数。在计算时,我们将数字转换为字符串,并使用列表推导式计算它的每个数字的幂。如果结果等于数字本身,则它是一个水仙花数,我们输出该数字并跳出循环。
python输出所有水仙花数
水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。以下是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)
```
这段代码首先使用 `range` 函数生成所有的三位数,然后通过取整运算符 `//` 和取模运算符 `%` 分离出每个数的个位、十位和百位数字。接着,判断这个数字是否等于它的各位数字的立方和,如果是,就将它输出。