for循环实现水仙花数
时间: 2023-10-19 14:18:56 浏览: 34
好的,对于这个问题,可以直接回答。水仙花数是指一个 n 位数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。例如,153 是一个水仙花数,因为153 = 1^3 + 5^3 + 3^3。下面是一个使用 for 循环实现水仙花数的代码示例:
```python
for i in range(100, 1000):
num = i
sum = 0
while num > 0:
digit = num % 10
sum += digit ** 3
num //= 10
if i == sum:
print(i)
```
这个代码会输出所有的三位数水仙花数。
相关问题
用for循环求水仙花数
水仙花数是指一个三位数,它的每个位上的数字的三次幂之和等于它本身。要用for循环求水仙花数,可以按照以下步骤进行操作:
1. 使用for循环遍历100到999之间的所有三位数。
2. 在循环中,使用取模和除法运算符将当前数字的百位、十位和个位分别提取出来。
3. 计算当前数字的各位数字的三次幂之和。
4. 使用if语句判断当前数字是否等于各位数字的三次幂之和,如果相等,则输出当前数字为水仙花数。
下面是代码实现:
```
for (int i = 100; i <= 999; i++) {
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 100;
if (i == (ge * ge * ge + shi * shi * shi + bai * bai * bai)) {
System.out.println("水仙花数:" + i);
}
}
```
双重for循环求水仙花数
好的,以下是代码实现:
```python
for i in range(100, 1000):
for j in str(i):
if i == sum(int(k)**3 for k in str(i)):
print(i)
break
```
这段代码可以求出所有的三位数水仙花数。