c 循环结构寻找水仙花数
时间: 2023-12-04 10:40:12 浏览: 40
以下是使用C语言循环结构寻找水仙花数的代码示例:
```c
#include <stdio.h>
#include <math.h>
int main()
{
int n, i, j, k, sum;
printf("水仙花数有: ");
for (n = 100; n < 1000; n++) {
i = n / 100; // 百位数
j = n / 10 - i * 10; // 十位数
k = n % 10; // 个位数
sum = pow((double)i, 3) + pow((double)j, 3) + pow((double)k, 3);
if (n == sum) {
printf("%d ", n);
}
}
printf("\n"); return 0;
}
```
该程序使用for循环从100到999遍历所有三位数,然后将每个数的百位、十位和个位分别计算出来,再将它们的立方和计算出来。如果该立方和等于该数本身,则说明该数是水仙花数,将其输出即可。
相关问题
java 用循环判断水仙花数
好的,以下是 Java 代码实现:
```java
public class Main {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) { // 遍历 100 到 999 每一个数字
int a = i / 100; // 获取百位数字
int b = i / 10 % 10; // 获取十位数字
int c = i % 10; // 获取个位数字
if (i == a * a * a + b * b * b + c * c * c) { // 如果该数字是水仙花数
System.out.println(i); // 输出该数字
}
}
}
}
```
以上代码中,我们使用 `for` 循环从 100 到 999 遍历每一个数字,然后分别获取该数字的百位、十位和个位数字,判断该数字是否是水仙花数,如果是则输出该数字。
python多层循环结构水仙花数
以下是Python多层循环结构判断水仙花数的例子:
```python
# 多层循环结构判断水仙花数
n = int(input())
flag = False # 标记是否找到水仙花数
for i in range(100, n):
for j in range(10):
for k in range(10):
if i == j**3 + k**3 + (i//100)**3 + (i//10)%10**3:
flag = True
break
if flag:
break
if flag:
break
if flag:
print("有水仙花数")
else:
print("没有水仙花数")
```