一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程 找出1000以内的所有完数。

时间:2025-04-15 13:16:25

        一个数如果恰好等于它的因子之和,这个数就称为 "完数 "。例如6=1+2+3.编程 找出1000以内的所有完数。


思路:首先求出一个数的所有因子

           在判断这个数的所有因子之和与它本身是否相等

public class test{
    public static void main(String[] args){
        int i,j;
        int num = 0;
        for(i=1; i<=1000; i++){
            num = 0;
            for(j=1; j<i; j++){    //找出这个数的所有因子
                if(i%j == 0){
                    num = num+j;   //将所有因子相加
                }
            }
            if(i == num){          //判断这个数的所有因子之和与它本身是否相等
                (i+" ");
            }
        }
    }
}