java计算水仙花数
时间: 2023-10-11 08:24:23 浏览: 101
水仙花数是指一个n位数(n>=3),它的每个位上的数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1的3次方+5的3次方+3的3次方等于153。
以下是Java程序计算水仙花数的示例代码:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int start = 100;
int end = 999;
for (int i = start; i <= end; i++) {
if (isNarcissistic(i)) {
System.out.println(i);
}
}
}
public static boolean isNarcissistic(int num) {
int sum = 0;
int n = num;
int len = String.valueOf(num).length();
while (n > 0) {
int digit = n % 10;
sum += Math.pow(digit, len);
n /= 10;
}
return sum == num;
}
}
```
这个程序将计算从100到999之间的所有水仙花数,并将它们打印出来。函数isNarcissistic用于判断一个数是否是水仙花数,它使用while循环遍历数位并计算每个数字的n次幂之和,最后判断是否等于原数。
阅读全文