package Four;
/*
* 一个数,如果恰好等于它的各个因子(该数本身除外)之和,如6=3+2+1,那么称该数为完数
* 若因子之和大于该数,则称其为“盈数”,求2到60之间的所有完数和盈数
*
* 输出2-60之间的所有完数和盈数,并以如下形式输出
* E:e1 e2,....
* G:g1 g2.....
*
* */
public class WanNumber {
public static int Sum(int x){
int sum = 0;
for(int i =1;i<x;i++){
if(x%i==0){
sum+=i;
}
}
return sum;
}
public static void main(String[] args) {
int[] numberE = new int[100];
int[] numberG = new int[100];
int w = 0,y =0;
for(int i =2;i<=60;i++){
if(i ==Sum(i)){
numberE[w++] = i;
}else if(i<Sum(i)){
numberG[y++] = i;
}
}
System.out.print("E:");
for(int i =0;i<numberE.length;i++){
if(numberE[i]>0){
System.out.print(numberE[i]+" ");
}
}
System.out.println();
System.out.print("G:");
for(int i =0;i<numberG.length;i++){
if(numberG[i]>0){
System.out.print(numberG[i]+" ");
}
}
}
}
控制台输出测试