Pagini recente » Cod sursa (job #850922) | Cod sursa (job #2901350) | Cod sursa (job #1482166) | Cod sursa (job #1259126) | Cod sursa (job #2246396)
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int n=0,err=0,i=0,j=0;
unsigned long long result=0;
int *v=(int*)malloc(sizeof(int)*1000000);
FILE*fp;
fp=fopen("fractii.in","r");
if(fp==NULL)
perror("Eroare la deschiderea fisierului pentru citire!");
err=fscanf(fp,"%d",&n);
if(err==-1)
perror("Eroare la citire!");
fclose(fp);
for(i=2;i<=n;++i)
*(v+i)=i-1;
for(i=2;i<=n/2;++i)
for(j=2*i;j<=n;j+=i)
*(v+j)-=*(v+i);
for(i=2;i<=n;++i){
result+=*(v+i);
}
result*=2;
result++;
fp=fopen("fractii.out","w");
if(fp==NULL)
perror("Eroare la deschiderea fisierului pentru scriere!");
fprintf(fp,"%llu",result);
fclose(fp);
free(v);
return 0;
}