Cod sursa(job #136901)
Utilizator | Data | 16 februarie 2008 14:10:56 | |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.38 kb |
#include<fstream.h>
ifstream f("fractii.in");
ofstream g("fractii.out");
long sol=1,i,n;
int ind_euler(long i)
{
float d=2;long aux=i;float pr=aux;
while(aux!=1)
{
if (aux%(int)d==0)
{pr*=(d-1)/d;
while(aux%(int)d==0&&aux!=1) {aux/=d;}}
d++;}
return pr;
}
int main()
{
f>>n;
for(i=n;i>=2;i--)
sol+=2*ind_euler(i);
g<<sol;
f.close();
g.close();
return 0;
}