用java打印出所有的水仙数
时间: 2024-03-16 07:44:06 浏览: 9
好的,水仙花数指一个 n 位数 (n≥3),它的每个位上的数字的 n 次幂之和等于它本身。因此,我们可以通过以下Java代码来打印出所有的水仙数:
```
public class NarcissisticNumber {
public static void main(String[] args) {
int num;
for (int i = 100; i < 1000; i++) {
num = i;
int sum = 0;
while (num > 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
if (sum == i) {
System.out.print(i + " ");
}
}
}
}
```
运行结果如下:
```
153 370 371 407
```
相关问题
Java打印出所有水仙花数
好的,水仙花数是指一个n位数(n≥3),其各位数字的n次方之和等于该数本身。那么我们可以使用如下的Java代码来打印出所有的3位水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int i,j,k;
for(int n=100;n<1000;n++){
i = n/100;
j = n/10%10;
k = n%10;
if(n==(i*i*i+j*j*j+k*k*k)){
System.out.println(n);
}
}
}
}
```
输出结果为:
```
153
370
371
407
```
这四个数都是3位的水仙花数。
用Java打印所有的水仙花数
以下是用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 (a * a * a + b * b * b + c * c * c == i) {
System.out.println(i);
}
}
}
}
```
这段代码可以输出所有的三位水仙花数。