Cod sursa(job #286960)
Utilizator | Data | 24 martie 2009 12:56:31 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <stdio.h>
#include <stdlib.h>
#define Nmax 20000002
short a[Nmax];
int main()
{
int n, i, j, nr;
freopen ("ciur.in","r",stdin);
freopen ("ciur.out","w",stdout);
scanf ("%d",&n);
for (i=1;i<=n;i++)
if (!a[i])
for (j=i+i;j<=n;j+=i) a[j]=1;
nr=0;
for (i=2;i<=n;i++)
if (a[i]=0) nr++;
printf ("%d",nr);
return 0;
}