public class Perfect { public static void main(String[] args){ int r,j,i; for(i=1; i<1000; i++){//1000内的完数 r = 0; for(j=1; j<i; j++){//找i的因子 if(i%j == 0){ r = r + j;//将i的因子相加 } } if(r == i){//等于除它本身外的因子之和 System.out.println(r); } }
}}
public class TestEndOfAFew { public static void main(String[] args) { System.out.println("1000以内的完数有:"); for (int i = 1, sum = 0; i <= 1000; i++) {//遍历1...1000 sum = 0; // 存放所有因子的和,初始化为0 int maxFactor = i/2;//最大因子 是一个数的一半 for (int j = 1; j <= maxFactor; j++) //遍历所有可能的因子 if (i % j == 0)//确定j是i的因子 sum += j;//累加因子和 if (sum == i)//判断是否为完数 System.out.print(i + " "); } } }
public class Perfect {
public static void main(String[] args){
int r,j,i;
for(i=1; i<1000; i++){//1000内的完数
r = 0;
for(j=1; j<i; j++){//找i的因子
if(i%j == 0){
r = r + j;//将i的因子相加
}
}
if(r == i){//等于除它本身外的因子之和
System.out.println(r);
}
}
}}
public class TestEndOfAFew {
public static void main(String[] args) {
System.out.println("1000以内的完数有:");
for (int i = 1, sum = 0; i <= 1000; i++) {//遍历1...1000
sum = 0; // 存放所有因子的和,初始化为0
int maxFactor = i/2;//最大因子 是一个数的一半
for (int j = 1; j <= maxFactor; j++) //遍历所有可能的因子
if (i % j == 0)//确定j是i的因子
sum += j;//累加因子和
if (sum == i)//判断是否为完数
System.out.print(i + " ");
}
}
}