Cod sursa(job #406836)
Utilizator | Data | 1 martie 2010 20:37:00 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <stdio.h>
FILE *f;
FILE *g;
int n, i, nr, y, j;
char x[2000001];
void citire()
{
f=fopen("ciur.in", "r");
fscanf(f, "%d", &n);
fclose(f);
}
void prelucrare()
{
g=fopen("ciur.out", "w");
for(i=2;i<=n;i++)
{
if(x[i]==0)
{
y=i+i;
while(y<=n)
{
x[y]=1;
y=y+i;
}
}
}
for(i=2;i<=n;i++)
if(x[i]==0)
nr++;
fprintf(f, "%d", nr);
fclose(g);
}
int main()
{
citire();
prelucrare();
return 0;
}