java试编写程序,输出所有的水仙花数。水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身,
时间: 2023-08-08 09:09:58 浏览: 77
水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如:$1^3+5^3+3^3=153$。请编写程序求出100到999之间的所有水仙花数。代码
好的,以下是Java代码实现:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
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 的所有 3 位数。对于每个数,我们按照题目要求计算出该数的百位数、十位数和个位数,然后判断该数是否等于它们的 3 次幂之和。如果等于,则输出该数,否则继续遍历下一个数,直到遍历完所有的 3 位数为止。
阅读全文