如果整數A 的全部因子(包括1,不包括A本身)之和等於B,且整數B的全部因子(包括1,不包括B本身)之和等於A,則稱整數A\B是一對親密數。求3000以內的全部親密數。
代碼:
package chp3; public class CloseNumber{ public static void main(String[] args){ for(int i=1;i<=3000;i++){ int b=allFact(i); int a=allFact(b); if( i==a&&a<b ){ System.out.println(a+" "+b); } } } public static int allFact(int n){ int sum=0; for(int i=1;i<=n/2;i++){ //a<=n/2表明n的因子中不包含n本身 if(n%i==0) sum=sum+i; } return sum; } }