水仙花数java
时间: 2023-09-24 21:02:52 浏览: 102
水仙花数是指一个n位正整数(n≥3),它的每个位上的数字的n次幂之和等于它本身。例如:153=1³+5³+3³。
下面是一个 Java 代码示例:
```
public class NarcissisticNumber {
public static void main(String[] args) {
int n = 3; // n位数
for (int i = 1; i < Math.pow(10, n); i++) {
int sum = 0;
int temp = i;
while (temp > 0) {
int digit = temp % 10;
sum += Math.pow(digit, n);
temp /= 10;
}
if (sum == i) {
System.out.println(i);
}
}
}
}
```
代码中,我们通过循环枚举从 1 到 10^n-1 的所有 n 位正整数,然后计算每个数的每个位数的 n 次幂之和,如果和等于该数本身,则输出该数。
相关问题
java水仙花数编程_水仙花数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 (i == a * a * a + b * b * b + c * c * c) {
System.out.println(i + "是水仙花数!");
}
}
}
}
```
这个程序从 100 到 999 的所有三位数中查找水仙花数,如果一个数等于其每个位数的立方和,则该数字是水仙花数。程序输出所有找到的水仙花数。
希望能帮到你!
水仙花数java代码
以下是水仙花数的 Java 代码:
```
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
int a = i % 10;
int b = i / 10 % 10;
int c = i / 100;
if (i == (a * a * a + b * b * b + c * c * c)) {
System.out.println(i);
}
}
}
}
```
这段代码遍历了 100 到 999 之间的数字,并判断每个数字是否为水仙花数。如果是,则将其输出。
阅读全文