python打印出所有的“水仙花数”
时间: 2023-06-03 17:06:20 浏览: 85
Sure, 我可以帮您解决这个问题, 您只需要运行以下代码即可:
```python
for i in range(100, 1000):
a = i % 10
b = (i // 10) % 10
c = i // 100
if a**3 + b**3 + c**3 == i:
print(i)
```
以上代码将会打印出所有的 "水仙花数",即由三位数的各位数字的立方和等于该数本身的所有数。如有任何问题,请随时问我。
相关问题
Python打印出所有的水仙花数
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。例如,153就是一个水仙花数,因为 $1^3 + 5^3 + 3^3 = 153$。
下面是 Python 代码实现:
```python
for i in range(100, 1000):
temp = i
sum = 0
while temp:
sum += (temp % 10) ** 3
temp //= 10
if sum == i:
print(i)
```
这段代码遍历了所有的三位数,计算每个数的各个位上数字的立方和,如果等于该数本身,则打印出该数。
用python编码打印所有水仙花数
水仙花数是指一个 n 位数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。例如: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(100, 1000)` 生成了所有的三位数,然后分离出每个数的百位、十位和个位数,判断是否为水仙花数,如果是的话就打印出来。
阅读全文