![](https://i-blog.csdnimg.cn/blog_migrate/ce64a33cc72a3044d8e9b6430e4f2b9e.png)
#include <iostream>
using namespace std;
int main()
{
int a,sum;
cin >> a;
for (int i = 2; i <= a; i++) {
sum = 0;
for (int j = 1; j < i; j++) {
if (i % j == 0)sum += j;
}
if (sum == i)cout << i << endl;
}
return 0;
}
一开始想错了,以为成一个数的任意因子的和相加=这个数了,一直不知道怎么下手。