亲密数
2017-04-09 10:39
197 查看
/**
* 亲密数 假设有a,b两个数,若a的所有因子之和等于b,b的所有因子之和
等于a,并且a不等于b,则称a和b是一对亲密数
*/
* 亲密数 假设有a,b两个数,若a的所有因子之和等于b,b的所有因子之和
等于a,并且a不等于b,则称a和b是一对亲密数
*/
int b1,b2,count,a,i; int g1[]=new int[1000],g2[]=new int[1000]; //Scanner scanner=new Scanner(System.in); //int m=scanner.nextInt(); for(a=1;a<1000;a++){ for(i=0;i<1000;i++) g1[i]=g2[i]=0; count=0;//数组下标 b1=0;//累加和 for(i=1;i<a/2+1;i++){ if(a%i==0){ g1[count++]=i; b1+=i; } } count=0; b2=0; for(i=1;i<b1/2+1;i++){ g2[count++]=i; b2+=i; } if(b2==a && a<b1){ System.out.println("两个亲密数分别是: "+a+" "+b1); count=1; while(g1[count]>0){ System.out.println(g1[count]); count++; } count=1; while(g2[count]>0){ System.out.println(g2[count]); count++; } } }