в PascalABC программа работает, а в Turbo Pascal 7.0 выдает на 1 члена меньше и почемуто одни и те же числа.
Помогите найти ошибку. Заранее благодарен.
program Lab8_2;
const m=200;
var h,h1,h2:set of 1..m; i,p,n,k,r:integer; x:1..200;
procedure wri (h:set of 1..m);
var x:1..200;
begin
for x:=1 to 200 do
if x in h then
writeln(x);
end;
begin
writeln('Введите количество членов!');
readln(n);
while i<n do
begin
p:=Random(200);
h:=h+[p];
i:=i+1;
end;
writeln('Сформированное множество:');
wri(h);
k:=2;
while k<=200 do
begin
if k in h then
h1:=h1+[k];
k:=k+2;
end;
writeln('в том числе кратные 2:');
wri(h1);
r:=3;
while r<=200 do
begin
if r in h then
h2:=h2+[r];
r:=r+3;
end;
writeln('в том числе кратные 3:');
wri(h2);
end.