1) 找出所有的水仙花数 说明: 水仙花数是一个三位数, 其特征是它的每个位上的数字的 3次幂之和等于它本身。例如:。1∧3+5∧3+3∧3=153。 java程序代码
时间: 2024-10-04 07:04:01 浏览: 40
找出所有的水仙花数的Java程序代码可以按照以下步骤编写:
```java
public class NarcissisticNumbers {
public static void main(String[] args) {
int limit = 1000; // 限制查找范围,这里只考虑三位数
for (int i = 100; i < limit; i++) { // 遍历100到999之间的整数
if (isNarcissistic(i)) {
System.out.println(i); // 如果是水仙花数,打印出来
}
}
}
// 判断是否是水仙花数的函数
public static boolean isNarcissistic(int num) {
String strNum = Integer.toString(num);
int len = strNum.length(); // 获取数字的位数
int sum = 0;
for (int digit : strNum.toCharArray()) {
int power = len - strNum.indexOf(digit) - 1; // 计算3次幂的指数
sum += Math.pow(Integer.parseInt(digit), power);
}
return sum == num;
}
}
```
在这个代码中,我们首先设置了一个上限`limit`,然后从100开始遍历到这个上限内的所有整数。对于每个数字,我们调用`isNarcissistic`方法检查它是否满足水仙花数的条件。如果满足,就将其打印出来。
阅读全文