Cod sursa(job #2246394)

Utilizator sorgeTrifescu Stefan-Octavian sorge Data 27 septembrie 2018 03:12:00
Problema Fractii Scor 30
Compilator c Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    int n=0,err=0,i=0,j=0,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,"%d",result);
    fclose(fp);





   return 0;
}