完数即完全数,又称完美数或完备数,是一些特殊的自然数。它所有的真因子的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。
package ch1;
public class demo2 {
public static void main(String[] args) {
wanshu(1,1000);
}
public static void wanshu(int a,int b){
int i,j;
int sum=0;
for(i=a,i=1;i<=b;i++){
for(j=1;j<i;j++){
if(i%j==0)
sum+=j;
}
if(sum==i)
System.out.println(i);
sum=0;
}
}
}
此法细节与上篇求素数差异不大,多加了sum的求和理解问题
最后的sum=0为if输出条件不符合时的接口,如果没有sum=0,那最终就不会有输出结果