真数的概念:比如6=1+2+3;28=1+2+4+7+14
就是等于自己的约数之和(除本身哈)
#include<iostream>
#include<vector>
int N = 30;//可更改
vector<int>vec1;
vector<int>vec2;
int main()
{
for (int i = 2; i < N + 1; i++)
{
for (int j = 1; j < i; j++)
{
if (i%j == 0)
{
vec1.push_back(j);
}
}
int pp = 0;
for (int k = 0; k < vec1.size(); k++)
{
pp += vec1[k];
}
vector <int>::iterator iter = vec1.begin();
for (; iter != vec1.end();)
{
iter = vec1.erase(iter);
}
if (i == pp)
{
vec2.push_back(i);
}
}
for (int kk = 0; kk < vec2.size(); kk++)
cout << "***" << vec2[kk];
cout<< endl;
return 0;
}