Cod sursa(job #216495)

Utilizator alexandra_naeNae Alexandra Beatrice alexandra_nae Data 24 octombrie 2008 18:50:19
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include<stdio.h> 

 
int x;   
bool c[2000005]; 
  
void ciur(int n)   
{   
    int i,j;   
    for(i=2;i*i<=n;++i)   
        if(c[i]==false)   
            for(j=i*i;j<=n;j+=i)   
                c[j]=true;   
}   
  
int numara(int n)   
{   
    int i,nr=0;   
    for(i=2;i<=n;++i)   
        if(!c[i])   
            ++nr;   
    return nr;   
}      
  
int main()   
{   
       
    freopen("ciur.in","r",stdin);   
    freopen("ciur.out","w",stdout);   
       
    scanf("%d",&a);   
    ciur(a);   
    printf("%d\n",numara(a));   
    return 0;   
}