完全的一头雾水
我想让Mob_Dest最后获得的是最短的距离mob_Dest := 500;
MaxCount := 99;
while(i<MaxCount) do
begin
if _addr>0 then
begin
if(abs(x) < mob_Dest) and (abs(y) < mob_Dest) then
begin
Env_Mob_Dest := abs(x) + abs(y);
if(Mob_Dest*2 > Env_Mob_Dest) then
begin
Mob_Dest := Env_Mob_Dest/2;
end;
end;
end;
i := i+1;
end;
我想让Mob_Dest最后获得的是最短的距离mob_Dest := 500;
MaxCount := 99;
while(i<MaxCount) do
begin
if _addr>0 then
begin
if(abs(x) < mob_Dest) and (abs(y) < mob_Dest) then
begin
Env_Mob_Dest := abs(x) + abs(y);
if(Mob_Dest*2 > Env_Mob_Dest) then
begin
Mob_Dest := Env_Mob_Dest/2;
end;
end;
end;
i := i+1;
end;
//冒泡排序
var
iParam:array[0..4] of integer;
i,j,a:integer;
begin
iParam[0]:=122;
iParam[1]:=43;
iParam[2]:=43;
iParam[3]:=54;
iParam[4]:=1;
for i:=0 to 4 do
begin
for j:=i+1 to 4 do
begin
if iParam[i]<=iParam[j] then
begin
a:=iParam[i];
iParam[i]:=iParam[j];
iParam[j]:=a;
end;
end;
end; for i:=0 to 4 do
showmessage(inttostr(iParam[i]));
end;
for转while没难度
也就是需要两个while
//ðÅÝÅÅÐò
var
iParam:array[0..4] of integer;
i,j,a:integer;
begin
iParam[0]:=122;
iParam[1]:=43;
iParam[2]:=43;
iParam[3]:=54;
iParam[4]:=1;
i:=0;
while i<=4 do
begin
j:=i+1;
while j<=4 do
begin
if iParam[i]<=iParam[j] then
begin
a:=iParam[i];
iParam[i]:=iParam[j];
iParam[j]:=a;
end;
j:=j+1;
end;
i:=i+1;
end; for i:=0 to 4 do
showmessage(inttostr(iParam[i]));
end;