Pagini recente » Cod sursa (job #2707959) | Cod sursa (job #1915315) | Cod sursa (job #3256307) | Cod sursa (job #1720276) | Cod sursa (job #90353)
Cod sursa(job #90353)
#include<stdio.h>
int n,i,s;
int euler(int x){
int p,i,j,z;
char b;
z=0;
p=x;
if (x%2==0){
p=p/2;
z=z+1;
}
if (x==1)
p=1;
else if (x==2)
p=1;
else if (x==3)
p=2;
else if (x==4)
p=2;
else if (x==5)
p=4;
else {
for (i=3;i<x/2+1;++i)
if (x%i==0){
z=z+1;
j=1;
b='t';
while ((j<i-1)&&(b='t')){
j=j+1;
if (i%j==0)
b='f';
}
if (b=='t')
p=p*(i-1)/i;
}
if (z==0)
p=p*(x-1)/x;
}
return p;
}
int main(){
freopen("fractii.in","r",stdin);
freopen("fractii.out","w",stdout);
scanf("%d",&n);
for (i=1;i<n+1;++i)
s=s+euler(i)*2;
printf("%d\n",s-1);
return 0;
}