Cod sursa(job #209274)

Utilizator FllorynMitu Florin Danut Flloryn Data 21 septembrie 2008 18:24:28
Problema Ciurul lui Eratosthenes Scor 30
Compilator fpc Status done
Runda Arhiva educationala Marime 0.6 kb
program pascal;
var f,g:text;
    i,d,n,nr:longint;
    v:array[2..20000000] of longint;
begin
 assign(f,'ciur.in'); reset(f);
 assign(g,'ciur.out'); rewrite(g);
 read(f,n);
 for i:=2 to n do v[i]:=i;
 for d:=3 to trunc(sqrt(n)) do
  if v[d]<>0 then
              begin
              i:=d;
              while i+d<=n do
               begin
                v[i+d]:=0;
                i:=i+d;
               end;
              end;

    nr:=1;
    i:=3;
    WHILE i<=n do
     begin
        if v[i]<>0 then nr:=nr+1;
        i:=i+2;
     end;
  write(g,nr);
 close(f);
 close(g);
end.