Cod sursa(job #202311)
Utilizator | Data | 7 august 2008 13:00:47 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 30 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
var n,i,k,a:longint;
ok:boolean;
v:array[1..5000] of longint;
f,g:text;
begin
assign(f,'ciur.in');reset(f);
readln(f,n);close(f);
assign(g,'ciur.out');rewrite(g);
if n=2 then writeln(g,1)
else if n in [3,4] then writeln(g,2)
else begin
v[1]:=2;v[2]:=3;v[3]:=5;
k:=3;
for a:=7 to n do
begin
ok:=true;
i:=0;
repeat
i:=i+1;
if a mod v[i]=0 then ok:=false;
until (not ok) or (i=k);
if ok then begin k:=k+1;
v[k]:=a;
end;
end;
writeln(g,k);
end;
close(g);
end.