Pagini recente » Cod sursa (job #1440729) | Cod sursa (job #1598552)
#include <fstream>
#include <vector>
int div(int X)
{
std::vector<int> divizori;
int sum = 1, p = 0;
bool pass = false;
if(X % 2 == 0)
p = 1;
for(int i = 2 + p; i <= X/2; i = i + p + 1)
if(X % i == 0)
divizori.push_back(i);
for(int Y = 2 + p; Y < 2 * X; Y = Y + p + 1)
{
pass = false;
for(int j = 0; j < divizori.size(); j++)
if(Y % divizori[j] == 0)
{
j = divizori.size() - 1;
pass = true;
}
if(pass == false)
sum += Y;
}
return sum;
}
int main()
{
std::ifstream in("sum.in");
std::ofstream out("sum.out");
int N, X;
in>>N;
for(int i = 0; i < N; i++)
{
in>>X;
out<<div(X)<<std::endl;
}
return 0;
}