用for循环完成计算水仙花数
时间: 2023-05-22 11:05:57 浏览: 95
好的,以下是用 for 循环完成计算水仙花数的代码:
```python
for i in range(100, 1000):
# 将数字转为字符串,再按位拆分
a, b, c = map(int, str(i))
# 判断是否为水仙花数并输出
if a ** 3 + b ** 3 + c ** 3 == i:
print(i)
```
以上是 Python 代码,可以计算出所有三位数的水仙花数。如果需要计算四位数或更多位数的水仙花数,只需要将 range 函数中的参数改为适当的范围即可。
相关问题
c语言 用for循环完成计算水仙花数
当然可以!以下是 C 语言代码:
#include <stdio.h>
int main() {
int number, originalNumber, remainder, result = 0;
printf("请输入一个三位数: ");
scanf("%d", &number);
originalNumber = number;
// 用 for 循环计算水仙花数并打印结果
for (;originalNumber != 0; originalNumber /= 10) {
remainder = originalNumber % 10;
result += remainder * remainder * remainder;
}
if (result == number)
printf("%d 是一个水仙花数", number);
else
printf("%d 不是一个水仙花数", number);
return 0;
}
利用for循环计算水仙花数(水仙花数是一个三位数三位数的各位立方之和等于该本身)
可以使用以下代码计算三位数的水仙花数:
```python
for i in range(100, 1000):
num = str(i)
sum = 0
for digit in num:
sum += int(digit) ** 3
if sum == i:
print(i)
```
首先,我们使用 `range(100, 1000)` 生成 100 到 999 之间的所有三位数。对于每个数,我们将其转换为字符串并使用一个内部循环来计算其各位数字的立方和。如果这个和等于原始数字本身,那么这个数字就是水仙花数,我们将其打印出来。
阅读全文