Cod sursa(job #942133)

Utilizator ShadoWolfCodrut Constantin Gusoi ShadoWolf Data 20 aprilie 2013 22:56:56
Problema Sum Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#include <limits>
using namespace std;

ifstream in("sum.in");
ofstream out("sum.out");

void sumeaza(long x);
int cmmdc(int a,int b);

int main()
{
	int n,c;
	in>>n;
	in.ignore(numeric_limits<streamsize>::max(),'\n');
	for(int i=0;i<n;++i)
	{
		in>>c;
		in.ignore(numeric_limits<streamsize>::max(),'\n');
		sumeaza(c);
	}
	in.close();
	out.close();
	return 0;
}

void sumeaza(long x)
{
	long sum=0;
	for(int i=1;i<x*2;++i)
	{
		if (cmmdc(x,i)==1) sum+=i;
	}
	out<<sum<<"\n";
}

 
int cmmdc(int a,int b)
{
    int r;
    while (b)
    {
        r=a%b;
        a=b;
        b=r;
    }
    return a;
}