java求1000以内的所有水仙花数并输出
时间: 2024-01-22 10:03:42 浏览: 77
水仙花数是指一个三位数,其各个位上数字的立方和等于该数本身。例如153是一个水仙花数,因为1³ + 5³ + 3³ = 153。
以下是Java程序,可以求出1000以内的所有水仙花数并输出:
```java
public class NarcissisticNumbers {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int digit1 = i / 100; // 百位数
int digit2 = (i / 10) % 10; // 十位数
int digit3 = i % 10; // 个位数
if (i == digit1 * digit1 * digit1 + digit2 * digit2 * digit2 + digit3 * digit3 * digit3) {
System.out.println(i);
}
}
}
}
```
输出结果为:
```
153
370
371
407
```
相关问题
JAVA求1000以内所有的水仙花数并输出
水仙花数是指一个 n 位数(n≥3),其各位数字的 n 次方和等于该数本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。
以下是 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 % 100 / 10; // 十位数
int c = i % 10; // 个位数
if (a * a * a + b * b * b + c * c * c == i) {
System.out.print(i + " ");
}
}
}
}
```
运行结果:
```
153 370 371 407
```
利用Java,求1000以内所有的水仙花数并输出。
在Java中,水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。我们可以编写一个简单的程序来找出1000以内的所有水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
if (isNarcissistic(i)) {
System.out.println(i);
}
}
}
// 检查一个整数是否是水仙花数
public static boolean isNarcissistic(int number) {
int sumOfCubes = 0;
String numString = Integer.toString(number);
int length = numString.length();
for (int digit : numString.toCharArray()) {
sumOfCubes += Integer.parseInt(String.valueOf(digit));
}
return sumOfCubes == number;
}
}
```
这个程序会遍历100到999之间的每个数,对每个数的每一位取立方然后相加,如果最终结果等于原数,则认为它是水仙花数,并打印出来。
阅读全文