Cod sursa(job #311657)
Utilizator | Rusu Radu rusu_radu | Data | 3 mai 2009 20:49:43 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <stdio.h>
#define Nmax 2000000
long int n, nr;
char T[Nmax];
int main()
{
FILE *fin=fopen ("ciur.in", "r");
FILE *fout=fopen ("ciur.out", "w");
long int i, j;
fscanf (fin, "%ld\n", &n);
for (i=2; i<n; i++)
T[i]=1;
for (i=2; i<n; i++)
if (T[i]==1)
{
nr++;
for (j=2; j*i<n; j++)
T[i*j]=0;
}
fprintf (fout, "%ld\n", nr);
fclose(fout);
return 0;
}