在下面的程序中begin后加上p:=[2..200]的作用是什么,为什么不加时结果不同???
procedure TForm1.FormActivate(Sender: TObject);
type
number=set of 2..200;
var
p:number; i,j,k:byte; s:string;
begin
p:=[2..200];
s:='';
for i:=2 to 20 do
for j:=i+1 to 200 do
if j mod i=0 then p:=p-[j];
for k:=2 to 200 do
if k in p then
s:=s+' '+inttostr(k);
label1.Caption:=s;
end;
procedure TForm1.FormActivate(Sender: TObject);
type
number=set of 2..200;
var
p:number; i,j,k:byte; s:string;
begin
p:=[2..200];
s:='';
for i:=2 to 20 do
for j:=i+1 to 200 do
if j mod i=0 then p:=p-[j];
for k:=2 to 200 do
if k in p then
s:=s+' '+inttostr(k);
label1.Caption:=s;
end;
if k in p
K的值只能在2到200之间