若某个数恰好等于它的因子(包括1,但不包括本身)之和,那么这个数就被称为完全数。例如6的因子为1,2,3,而6=1+2+3.因此6是一个完全数。求出1000以内完全数。

#include <iostream>
#include <algorithm>
using namespace std;

int factorsum(int n) {  //求某个数的因子和
	int sum=0;
	for(int i=1;i<n;i++)
		if(n%i==0)
			sum+=i;
	return sum;
}
int main() {
    for(int j=1;j<=1000;j++)
    	if(j==factorsum(j))
    		cout<<j<<endl;
    return 0;
}

  

posted on 2017-05-04 12:06  王小东大将军  阅读(160)  评论(0编辑  收藏  举报