|
=1; // map[7,1]:=100; map[7,2]:=100; map[7,3]:=100; map[7,4]:=100; map[7,5]:=2; map[7,6]:=1; map[7,7]:=0; end;procedure TForm5.FormShow(Sender: TObject); var m,n:integer; v,i,j,w,k,l:integer; min: real; begin //form3.Show; min:=100; for i:=1 to 7 do begin flag[i]:=false; if map[request2,i]<100 then begin road[i,8]:=1; road[i,1]:=i; dist[i]:=map[request2,i]; end//if else begin road[i,8]:=0; dist[i]:=100; end;//else end;//for i flag[request2]:=true; for j:=1 to 7 do begin for w:=1 to 7 do begin if ((flag[w]=false) and (dist[w]<min)) then begin min:=dist[w]; v:=w; end;//if dist[w]<min end;//for w min:=100; if dist[v]=100 then showmessage(''''dist[v]=100!!'''') else begin////// flag[v]:=true; for k:=1 to 7 do begin if ((flag[k]=false) and(dist[v]+map[v][k]<dist[k]))then begin dist[k]:=dist[v]+map[v][k]; road[k,8]:=road[k,8]+1; for l:=1 to road[v,8] do road[k,l]:=road[v,l]; road[k,road[k,8]+1]:=w;
end;//if ((flag[k]=false) and(dist[v]+map[v][k]<dist[k])then end;//for k end;//////esle end;//for j:=1 to 7 do over end; end.
上一页 [1] [2] [3] 没有相关教程
|