求1000以内的所有完数

  • Post author:
  • Post category:其他


java2实用教程第5版,第49页课后习题3、4(4)。

求1000以内的所有完数。


完全数,又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。如果一个数恰好等于它的因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。

public class demo49_4_4 {

	public static void main(String[] args) {
		int i,j;
		System.out.println("1000以内的完数有:");
		
		for(i=1;i<=1000;i++) {
			int sum=0;
			for(j=1;j<i;j++) {
				if(0==i%j)
					sum = sum+j;
			}
			if(i==sum)
				System.out.print(i+" ");
		}

	}

}

结果为:

1000以内的完数有:

6 28 496



版权声明:本文为weixin_43653670原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。