Cod sursa(job #246256)

Utilizator klamathixMihai Calancea klamathix Data 20 ianuarie 2009 14:30:50
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include<stdio.h>
#include<math.h>


short int v[2000000];

int main()
{
long int i,j,k,nr=0;
FILE*in=fopen("ciur.in","r");
FILE*out=fopen("ciur.out","w");
fscanf(in,"%ld",&k);
v[1]=1;
for(i=2;i<=k/2;i++)
 v[2*i]=1;
for(i=3;i<=sqrt(k);i=i+2)
{ j=i;
 while(j<=k)
 {
  j+=i;
  v[j]=1;

 }

}
for(i=1;i<=k;i++)
 {
  if(v[i]==0) nr++;
 }

fprintf(out,"%ld",nr);

fcloseall();
return 0;
}