描述
完全数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数),恰好等于它本身。例如,6就是完全数,6的约数有1、2、3、6,除去本身6外,1+2+3=6。编程找出10000以内的所有完全数。
输入
无输入。
输出
每行输出一个完全数。(样例输出只是格式提示)
示例输入
无输入
示例输出
6
28
public class Main {
public static void main(String[] args) {
//在10000内遍历寻找完全数 不含1
for(int i = 2;i<10000;i++) {
if(trueNum(i)) {
System.out.println(i);
}
}
}
//判断是否为完全数的方法
public static boolean trueNum(int n) {
//1为所有数的约数
int num = 1;
//约数不能多于自身
for(int i = 2;i<n;i++) {
if(n%i==0)
num+=i;
}
//判断真因子之和是否等于n
if(num==n) {
return true;
}else {
return false;
}
}
}