Cod sursa(job #158421)
Utilizator | Data | 13 martie 2008 17:18:29 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 10 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.3 kb |
#include <stdio.h>
#define max 2000000
char v[max+1];
int main(){
long n,count=1;
FILE *f=fopen("ciur.in","r"),
*g=fopen("ciur.out","w");
fscanf(f,"%ld",&n);
long i,j;
for(i=3;i<=n;i+=2)
if(!v[i]) {
count++;
for(j=i*i;j<=n;j=j*i) v[j]=1;
}
fprintf(g,"%ld\n",count);
fclose(g);
return 0;
}