Cod sursa(job #416609)
Utilizator | Data | 13 martie 2010 00:24:28 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.34 kb |
#include<stdio.h>
FILE *f,*g;
long i,n,j,nr; char viz[2500000];
int main()
{ f=fopen("ciur.in","r"); g=fopen("ciur.out","w");
fscanf(f,"%ld",&n);
i=2;
while(i<=n)
{ if(viz[i]!='1')
{ nr++; j=2*i; while(j<=n) { viz[j]='1'; j+=i; }}
if(i!=2) i+=2; else i++;
}
fprintf(g,"%ld",nr);
fclose(g);
return 0;
}