:
: TURBO PASCAL 7.1
: ,
: 2 .
:
.. . . . .: , 2008.
:
1. .
2. .
3. .
, .
:
- (, ) ;
- ;
- (, ) .
. . , , , .
, , ; ; . 18.1 , 18.1 .
18.1 ― :
, , , . , . -.
, . , ( ) , .
, . , . , . , , , .
, . , , . . .
- .
n adj n. a (i, j) 1, j i ( < i, j >), 0 (. 18.2).
18.2 ―
, a (i, j) = a (j, i), . . .
|
|
, : 1 , 2 (< A,B >,< B,C >),... n , n , . 18.3 adj 2, adj 3, adj 4 18.2.
18.3 ―
. , () . 18.4 18.2.
18.4 ―
pp
: , .. , . , . , , .
. , , , , , .
, , 18.2, :
mas:array[1..4,1..4]=((0,1,0,0),(0,0,1,1), (0,0,0,1),(1,0,1,0)), .
, . .
. . 5 18.2. :
(< A,B >,< B,C >,< C,D >,< B,D >,< D,C >)18.5 ―
, : - - : -data/down-. 18.6 .
18.6 ―
, , , , .
, .
{ } Program Example_1; Const n=5; max=10000; Var a: Array [1..n,1..n] of Integer; v0,w,edges: Integer; from,tu,length: Array [1..n] of Integer; Procedure adjinit;{ pp pp p p p p A pp N x N } Var i,j: Integer; Begin {"" p (p )} For i:=1 to n do For j:=1 to n do a[i,j]:=max; For i:=1 to n do a[i,i]:=0;{ pp, p} a[1,2]:=12; a[1,3]:=18; a[1,4]:=10; a[2,1]:=12; a[2,3]:=6; a[2,5]:=9; a[3,1]:=18; a[3,2]:=6; a[3,4]:=7; a[3,5]:=3; a[4,1]:=10; a[4,3]:=7; a[4,5]:=15; a[5,2]:=9; a[5,3]:=3; a[5,4]:=15; end;Procedure printmat;{ pp p p A p} Var i,j: Integer; Begin writeln; writeln('p p (',n,'x',n,'):'); writeln; For i:=1 to n do Begin write (''); For j:=1 to n do If a[i,j]=max Then write(' ----') Else write(a[i,j]:6); writeln(' ') End; writeln; writeln (' ("----" - pp )') end;Procedure dijkst;
|
|
: .
:
1. .
2. .
3. .
.