5.33 (完全数)如果一个正整数等于除它本身之外其他所有除数之和,就称之为完全数。
例如:6 是第一个完全数,因为 6=1+2+3。下一个完全数是 28,28=14+7+4+2+1。
10 000以下的完全数有四个,编写程序,找出这四个完全数。
public class Execise5_33 {
public static void main (String[] args){
int a;
for(int i=1;i<=10000;i++){
a=0; //i每次加1时a归零,避免加上上一个i的a
for(int j=1;j<i;j++)
if(i%j==0) //每次整除时把被除数加上
a=a+j;
if (a==i)
System.out.println(i);
}
}
}
输出结果如下: