从键盘上输入一个整数,使用for 循环语句判断该数是否是完全数。完全数是指其所有因数(包括1但不包括其本身)的和等于该数自身的数。例如(28=1+2+7+14)用java编写
时间: 2024-09-27 19:04:57 浏览: 34
在Java中,你可以编写如下的代码来判断一个整数是否是完全数。首先,我们需要获取用户输入的整数,然后使用for循环遍历它的所有因子,计算它们的和并与原数比较:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();
if (isPerfectNumber(num)) {
System.out.format("%d 是一个完全数.", num);
} else {
System.out.format("%d 不是一个完全数.", num);
}
// 判断函数
private static boolean isPerfectNumber(int n) {
int sum = 0;
for (int i = 1; i < n; i++) {
if (n % i == 0) { // 检查i是否是n的因数
sum += i; // 如果是,加到总和里
}
}
return sum == n && n != 1; // 排除1这个特殊情况,因为1不是完全数
}
阅读全文