找出所有的水仙花数。水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:13 + 53+ 33 = 153);
时间: 2023-08-29 09:12:17 浏览: 43
好的,针对您的问题,我可以给出以下代码,用于找出所有的水仙花数。
```python
for i in range(100, 1000):
num = i
sum = 0
while num > 0:
digit = num % 10
sum += digit ** 3
num //= 10
if sum == i:
print(i)
```
以上代码可以在一个循环范围内,依次判断每个三位数是否满足水仙花数的条件,若是则打印出该数。
相关问题
python找出所有的水仙花数。水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身
A:
可以使用循环来找出所有的水仙花数,具体步骤如下:
1. 从100到999循环遍历所有的三位数;
2. 取出当前三位数的百位、十位和个位数字,计算每个数字的3次幂之和;
3. 将三个数字的3次幂之和相加,判断是否等于当前的三位数,如果相等则为水仙花数,将其输出。
Python 代码如下:
```python
for i in range(100, 1000):
# 取出百位、十位和个位数字
a = i // 100
b = (i // 10) % 10
c = i % 10
# 计算每个数字的3次幂之和
sum = a**3 + b**3 + c**3
# 判断是否为水仙花数
if sum == i:
print(i)
```
输出结果:
```
153
370
371
407
```
python找出所有水仙花数,一个3位数,它每一位上的数字的3次幂之和等于它本身
可以使用以下代码来找出所有的水仙花数:
```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
```