(三)求1000以内的完数

来源:互联网 发布:愤怒的公牛 知乎 编辑:程序博客网 时间:2024/06/10 04:12

这学期学校开了java课,实验课老师布置了三个作业,抽空写了一下
做完第二题跟着思维惯性也用了iterator,感觉有点奇怪XD

//一个数如果恰好等于他的因子之和,这个数就称为完数,编写程序列出1000以内所有完数

/**一个数如果恰好等于它的因子之和,这个数就称为完数,编写程序列出1000之内所有完数 */public class Work03 {    public static void main(String[] args) {        Iterator02 iterator02 = new Iterator02();        int num = 1;        while (num != 1001) {            iterator02.iterate(num);            num++;        }    }}class Iterator02 {    int iterate(int temp) {        int sum = 0;        for (int i = 2; i <= temp; i++) {            if (temp % i == 0) {                int dividee = temp / i;                sum += dividee;            }        }        if (sum == temp) {            System.out.println(temp);        }        return 0;    }}