Java打印出所有水仙花数
时间: 2023-08-20 14:04:05 浏览: 125
好的,水仙花数是指一个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);
}
}
}
}
```
这段代码可以输出所有的三位水仙花数。
java打印所有的水仙花数pta
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
在Java中,可以编写一个程序来找出并打印所有小于某个给定限制的水仙花数。下面是一个简单的示例:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int limit = 1000; // 设置查找范围
for (int number = 100; number < limit; number++) { // 从100开始到limit - 1
if (isNarcissistic(number)) { // 如果是水仙花数
System.out.println(number); // 打印它
}
}
}
// 检查是否为水仙花数
private static boolean isNarcissistic(int num) {
int sum = 0;
int temp = num;
while (temp != 0) {
int digit = temp % 10;
sum += Math.pow(digit, 3);
temp /= 10;
}
return sum == num;
}
}
```
在这个例子中,`isNarcissistic()`函数计算输入数字各位的立方和,如果等于原数,则返回`true`,表示它是水仙花数。
阅读全文