j ava 判断perfect number
时间: 2024-10-06 19:04:47 浏览: 29
j ava程序题.md
5星 · 资源好评率100%
在Java中,完美数是指一个正整数的所有真因数(除了自身以外的因子)之和等于该数自身的数。判断一个数是否是完美数可以采用以下步骤:
1. 定义一个名为`isPerfectNumber`的方法,接受一个整数参数`num`。
2. 初始化一个变量`sum`为0,用于存储`num`的真因数之和。
3. 遍历从1到`num`的整数,如果`num`能被这个数整除(即`num % i == 0`),那么将这个数加入`sum`中,并同时将`num`除以这个因数(即`num /= i`),以便后续不再添加重复的因子。
4. 当遍历结束后,检查`sum`是否等于`num`。若相等,则说明`num`是完美数;否则不是。
5. 返回布尔值结果。
以下是简单的Java代码示例:
```java
public static boolean isPerfectNumber(int num) {
if (num <= 1) {
return false;
}
int sum = 1; // 自身不算真因数
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
sum += i; // 添加因数
if (i != num / i) { // 如果有另一个因子,也加上它
sum += num / i;
}
}
}
return sum == num;
}
```
阅读全文