Pagini recente » Cod sursa (job #330759) | Cod sursa (job #2886908) | Cod sursa (job #2908834) | Cod sursa (job #577559) | Cod sursa (job #87373)
Cod sursa(job #87373)
#include <stdio.h>
int prim(long int x){
long int i;
if (x==2)
return 1;
if (x%2==0)
return 0;
for (i=3;i*i<=x;i+=2)
if (x%i==0)
return 0;
return 1;
}
long int cmmdc(long int a , long int b){
while(a!=b){
if (a>b){
a-=b;
continue;
}
b-=a;
}
return a;
}
int main(){
long int N,x,i,j;
int aux;
FILE *fin,*fout;
fin=fopen("fractii.in","rt");
fout=fopen("fractii.out","wt");
fscanf(fin,"%ld",&N);
x=1;
for (i=2;i<=N;i++){
if (prim(i)==1)
x+=2*(i-1);
else {
aux=0;
for (j=2;j<=i-1;j++)
if (cmmdc(i,j)!=1)
aux++;
x=x+2*(i-1-aux);
}
}
fprintf(fout,"%ld",x);
fclose(fout);
fclose(fin);
return 0;
}