Cod sursa(job #434880)
Utilizator | Data | 6 aprilie 2010 17:58:16 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.43 kb |
#include <stdio.h>
int ciur[20000001];
long int n, i, j, k;
int nr;
int main()
{
FILE *f = fopen ("ciur.in","r");
FILE *g = fopen ("ciur.out","w");
fscanf (f,"%ld", &n);
fclose(f);
for (i=2; i<=n; ++i)
ciur[i] = 1;
for (i=2; i*i <= n; ++i)
if (ciur[i])
for (j=2; j*i <= n; ++j)
ciur[i*j] = 0;
for (i=2; i<=n; ++i)
if (ciur[i])
nr ++;
fprintf (g,"%d", nr);
fclose(g);
return 0;
}