Cod sursa(job #1324606)
Utilizator | Data | 22 ianuarie 2015 16:11:58 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <stdio.h>
#include <stdlib.h>
char c[2000001];
int main()
{
FILE *in,*out;
in=fopen("ciur.in", "r");
out=fopen("ciur.out", "w");
int n, nr=0, i, j;
fscanf(in, "%d", &n);
for(i=2; i*i<=n; i++)
if(c[i]==0)
for(j=i*i; j<=n; j+=i)
c[j]=1;
for(i=2; i<=n; i++)
if(c[i]==0)
nr++;
fprintf(out, "%d", nr);
fclose(in);
fclose(out);
return 0;
}