若某个数恰好等于它的因子(包括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; }