Pagini recente » Cod sursa (job #839431) | Cod sursa (job #2275441) | Cod sursa (job #964097) | Cod sursa (job #86112) | Cod sursa (job #12285)
Cod sursa(job #12285)
#include <stdio.h>
#include <math.h>
int vec[20],n;
int prim(int x)
{
int i,t=1;
for (i=2;i<=sqrt(x);i++)
if (x%i==0) t=0;
return t;
}
int totent(int x)
{
int i,fi;
fi=x;
for (i=2;i<=x/2;i++)
if (x%i==0){
if (prim(i)) fi=fi*(i-1)/i;
}
if (fi==x) return (x-1);
else return fi;
}
int main()
{
unsigned long long numar;
int i;
FILE *pf;
pf=fopen("fractii.in","r");
fscanf(pf,"%d",&n);
fclose(pf);
numar=1;
for (i=2;i<=n;i++)
numar+=(unsigned long long)(2*totent(i));
pf=fopen("fractii.out","w");
fprintf(pf,"%llu",numar);
fclose(pf);
return 0;
}