package work03;
public class test009 {
public static void main(String[] args){
int add = 0;
for(int a=1;a<=1000;a++){
for(int b=1;b<=a-1;b++){
if(a%b==0){
add=b+add;
if(add==a){
System.out.println(a+"是完美数");
}
}
}
add=0;
}
}
}
我这个完美数最后怎么会有个24,求指点
因为24在执行到1,2,3,4,6,8的时候会出现add = a的情况。所以应该结束再统计
示例----------------------------------
public class test009 {
public static void main(String[] args){
int add = 0;
for(int a=1;a<=1000;a++){
for(int b=1;b<=a-1;b++){
if(a%b==0){
add=b+add;
}
if (b == a-1){
if(add==a){
System.out.println(a+"是完美数");
}
}
}
add=0;
}
}
}