问题描述
如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,则称之为“完数”。例如6的因子是1,2,3,且6=1+2+3,因此6是完数。编写程序找出1000之内的所有完数。注意1不是完数。
输入格式
无
输出格式
如有多个完数,则分行输出,每行输出一个完数。(注意,不要输出其他任何多余字符)
资源限制
时间限制:1.0s 内存限制:256.0MB
代码块:
public class Main {
public static void main(String[] args) {
int sum = 0;
for(int i = 2; i <= 1000; i++){
for(int j = 1; j < i; j++){
if(i%j == 0){
sum += j;
}
}
if(sum == i){
System.out.println(i);
}
sum = 0;
}
}
}
评测结果: