Cod sursa(job #1160040)

Utilizator stefan_creastaStefan Creasta stefan_creasta Data 30 martie 2014 09:55:30
Problema Ciurul lui Eratosthenes Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.48 kb
#include <stdio.h>
#include <stdlib.h>
char v[2000000];
int main()
{
    int n,i,nr,c;
    FILE *fin, *fout;
    fin=fopen("ciur.in","r");
    fscanf(fin,"%d",&n);
    fclose(fin);
    nr=0;
    v[1]=v[0]=1;
    for(i=2;i*i<n;i++){
      if(v[i]==0){
        for(c=i*i;c<=n;c=c+i)
          v[c]=1;
      }
    }
    for(i=0;i<n;i++){
      if(v[i]==0)
        nr++;
    }

    fout=fopen("ciur.out","w");
    fprintf(fout,"%d",nr);
    fclose(fout);
    return 0;
}