Cod sursa(job #598715)
Utilizator | Data | 26 iunie 2011 20:04:43 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
#include <stdio.h>
#define Nmax 2000001
long N,i,j,S;
int ciur[Nmax];
int main ()
{
FILE *f, *g;
f=fopen("ciur.in", "r");
fscanf(f, "%d", &N);
fclose(f);
g=fopen("ciur.out", "w");
for (i=2; i<=N; i++)
if (!ciur[i])
{
for (j=i+i; j<=N; j+=i)
if (j%i==0) ciur[j]=1;
S++;
}
fprintf(g, "%d", S);
fclose(g);
return 0;
}