Cod sursa(job #587081)

Utilizator ovidiu95Decean Ovidiu Ciprian ovidiu95 Data 3 mai 2011 20:39:18
Problema Ciurul lui Eratosthenes Scor 90
Compilator fpc Status done
Runda Arhiva educationala Marime 0.52 kb
var     f,g:text;
        i,p,p1,n,k:longint;
        v:array[3..2000000] of boolean;
begin
assign(f,'ciur.in');
assign(g,'ciur.out');
reset(f);
rewrite(g);
read(f,n);
p:=3;
while p<=trunc(sqrt(n)) do begin
        p1:=p;
        while p1<n do begin
                p1:=p1+(2*p);
                v[p1]:=true;
        end;
        inc(p);
        while (p mod 2=0) and (v[p]=true) do inc(p);
end;
k:=1;
for i:=1 to (n div 2+ n mod 2)-1 do
        if v[2*i+1]=false then inc(k);
write(g,k);
close(g);
end.