Cod sursa(job #1143343)

Utilizator StefanAndrei5AndreiStefan StefanAndrei5 Data 15 martie 2014 15:02:51
Problema Ciurul lui Eratosthenes Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.55 kb
#include <stdio.h>
char v[2000000];
int main()
{
    FILE *fin,*fout;
    int i=0,n,r=0,k,f;
    fin=fopen("ciur.in","r");
    fout=fopen("ciur.out","w");
    fscanf(fin,"%d",&n);
    v[0]=1;v[1]=1;
    for(f=2;f*f<=n;f++)
    {
        if(v[f]==0)
        {
            k=f*f;
            while(k<=n)
            {
                v[k]=1;
                k=k+f;
            }
    }
    }
    fclose(fin);
    for(i=0;i<n;i++)
    {
        if(v[i]==0)
        r++;
    }
    fprintf(fout,"%d",r);
    fclose(fout);

    return 0;
}