i, j]:=Dani [i, j-nm];;;;
/ / --------------------------------------------------
{----------------- Quee ---------------------} QPush (inf: integer) ; cur: PVet; (cur); ^. inf:=inf; ^. next:=nil; QFirst=nil then:=cur; QLast:=cur; ^. Next:=cur;:=cur;;; QPop (var inf: integer): boolean; cur: PVet; QFirst=nil then:=false:=QFirst ^. Inf;:=QFirst; :=QFirst ^. next; (cur); QFirst=nil then QLast:=nil;:=true;;; QErase; cur: Pvet; QFirst <> nil do:=QFirst;:=QFirst ^. next; (cur);;:=nil;;
{----------------- / Quee ---------------------} ShowMaatr (M: TMatr ; n: integer; s: string); i, j: integer; Form1.CheckBox1.Checked thenForm1 do.ColCount:=n +1;. RowCount:=n +2; i:=- 1 to n doj:=0 to n do.Cells [j, i +1]:=inttostr (M [i, j]);;;; (s);;;
{------------------------ Max potik ---------} baseEtap: boolean;
/ / ------------------------- setMark: integer; k, j: integer;:=nil; QLast:=nil; j:=0 to n do Matr [- 1, j]:=- 1; (0); QPop (k) doj:=1 to n do (Matr [- 1, j]=- 1 ) and (Matr [k, j]> 0) then [- 1, j]:=k; (j); j=n then:=j;;;;;;;:=- 1;; p>
/ / ------------------------- Etap3 (k: integer); kn: integer;:=n; [k, kn] :=0; [kn, k]:=1;:=k;:=Matr [- 1, k]; kn=0;; k: integer;:=setMark; (Matr, n, «setMark») ; k <>- 1 then (k); (Matr, n, «etap3»);; k=- 1; MaxPriznach: integer; i, j, kPrizn: integer; getRob (i: integer): integer; j: integer; j :=nm +1 to nm + nr doFMatr [i, j]> 0 then:=j-nm;;;;:=- 1;;:=FMatr;; i:=0 to n doj:=0 to n do [i, j]:=FMatr [i, j]-Matr [i, j];;
/ / ------------:=0; j:=0 to n do kPrizn:=kPrizn + FMatr [0, j]; i:=1 to nm do FMatr [i , - 1]:=getRob (i);:=kPrizn; (FMatr, n, «Rez»);;
{------------------------ / Max potik ---------} TForm1.N6Click (Sender: TObject); i: integer;;; (FMatr, n, «First»);. Text:=inttostr (MaxPriznach);. Clear; i:=1 to nm doFMatr [i, - 1]> 0 then.Lines.Add («(Місце -» + inttostr (i) + «) -> (Робочий -» + inttostr (FMatr [i, - 1]) + «)»);;; TForm1.N7Click ( Sender: TObject);;.
ІНСТРУКЦІЯ користувача
Головна форма програми має Зручний и зрозумілій інтерфейс
Всі Операції з Даними (зберігання Даних, завантаження) віконуються з використаних пункту головного меню «Файл».
Знаходження оптимального розподілу здійснюється з використаних пункту головного меню «Знайти макс. призначення ».
З використаних елемента «Виводити проміжкові результати» користувач має можлівість проглядаті покроковий весь процес розвязання.