親密數

如果整數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;
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章