Java写如果一个数恰好等于它的真因子之和,则这个数称为完数。编写应用程序求1000以内的所有完数
时间: 2023-09-26 14:09:30 浏览: 114
Java找出1000以内的所有完数
5星 · 资源好评率100%
以下是Java程序代码实现:
```java
public class PerfectNumber {
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
if (isPerfectNumber(i)) {
System.out.println(i);
}
}
}
public static boolean isPerfectNumber(int num) {
int sum = 0;
for (int i = 1; i < num; i++) {
if (num % i == 0) {
sum += i;
}
}
return sum == num;
}
}
```
程序先遍历1000以内的所有数,对于每个数,调用 `isPerfectNumber` 方法判断是否是完数。`isPerfectNumber` 方法中,通过循环求出该数的所有真因子之和,如果等于该数本身,则返回 `true`,否则返回 `false`。
阅读全文