用Java输出一千以内的水仙花数
时间: 2023-04-10 19:00:33 浏览: 72
可以使用以下代码来输出一千以内的水仙花数:
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
int sum = 0;
int temp = i;
while (temp != 0) {
int digit = temp % 10;
sum += digit * digit * digit;
temp /= 10;
}
if (sum == i) {
System.out.println(i);
}
}
}
}
这个程序会输出所有的水仙花数,即153、370和371。
相关问题
用Java输出100到一千的水仙花数
以下是Java代码,可以输出100到一千的水仙花数:
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);
}
}
}
}
java用for循环输出水仙花数
在Java中,可以使用for循环来输出水仙花数。水仙花数是指一个n位数,其各个位上的数字的n次幂之和等于该数本身。以下是一个示例代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int start = 100; // 水仙花数的起始值
int end = 999; // 水仙花数的结束值
for (int i = start; i <= end; i++) {
int number = i;
int sum = 0;
int digit;
while (number > 0) {
digit = number % 10;
sum += Math.pow(digit, 3); // 计算各个位上数字的立方和
number /= 10;
}
if (sum == i) {
System.out.println(i); // 输出水仙花数
}
}
}
}
```
上述代码中,使用for循环从起始值到结束值遍历所有的三位数。在每次循环中,通过while循环将当前数字的各个位上的数字取出,并计算其立方和。如果立方和等于当前数字本身,则输出该数字,即为水仙花数。