Cod sursa(job #219515)

Utilizator mariuscris90giuroiu marius mariuscris90 Data 7 noiembrie 2008 09:20:49
Problema Ciurul lui Eratosthenes Scor 40
Compilator fpc Status done
Runda Arhiva educationala Marime 0.49 kb
program ciurul;
type vec=array[1..2000004] of boolean;
var n,j,i,z,c,k,nr:longint;
    f,g:text;
    a:vec;
begin
assign(f,'ciur.in');assign(g,'ciur.out');reset(f);rewrite(g);
readln(f,n);
z:=2;
c:=2;
while z<n do begin
z:=z+c;
a[z]:=true;
end;
k:=3;
z:=1;
c:=1;
while k<n do begin
z:=k;
c:=k;
if a[z]=false then
while z<n do begin
z:=z+c;
a[z]:=true;
end;
k:=k+2;end;
nr:=0;
for i:=2 to n do if a[i]=false then nr:=nr+1;
write(g,nr);
close(f);close(g);end.