题目
编写程序找出5000以内这样的数对(C,D):如果整数C的所有因子(含1,但是不含自身)之和等于D;而且整数D的所有因子(含1, 但是不含自身)之和等于C。
代码
public class test1 {
public static void main(String[] args) {
System.out.println("5000以内这样的数对有:");
for(int i = 1 ; i < 5000 ; i++){
int temp1 = 0;
for( int j = 1; j < i ; j++){
if(i%j == 0){
temp1 = temp1 + j ;
}
}
for(int n = 1 ; n < 5000 ; n++){
int temp2 = 0;
for( int m = 1 ; m < n ; m++){
if(n%m == 0){
temp2 = temp2 + m ;
}
}
if( temp1 == n && temp2 ==i && n!=i ){
System.out.println("("+i+","+n+")");
}
}
}
}
}