1到1000之间的完美数字

时间:2015-12-24 17:05:29

标签: java perfect-numbers

我试着找到1到1000之间的完美数字,我写了这段代码,但它没有用! 怎么了?

public class Perfect {
    public static void main(String[]args) {
        int sum=0;
        for (int n = 1; n < 1000; n++) {
            for (int j = 1; j < n/2 ; j++) {
                if (n % j == 0)
                    sum = sum + j;
            }
            if (sum == n) {
                System.out.println(sum);
            }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

sum 声明(更重要的是初始化)移动到 { {1}}循环。此外,您需要在内部循环中测试for。像,

<=

我得到for (int n = 1; n < 1000; n++) { int sum = 0; for (int j = 1; j <= n / 2; j++) {