{ Программа: Метод Форда }
{ Автор: }
{ Версия: v1.0 }
PROGRAM ford;
uses crt,graph;
const menu:array[0..4,1..6] of string =
(('Ввод данных','Решение задачи','Вывод результата',
'О методе','О программе','Выход'),
('Ввод данных','Просмотр данных','Назад','','',''),
('Экран','Файл','Назад','','',''),
('Клавиатура','Файл','Назад','','',''),
('Да','Нет','','','','')); menuof:array[0..4] of byte =(6,3,3,3,2); menugo:array[0..4,1..6] of byte = ((1,0,2,0,0,4), (3,0,0,0,0,0),
(0,0,0,0,0,0), (0,0,1,0,0,0), (0,0,0,0,0,0)); name1='input.dat'; name2='output.dat'; xxx=140; yyy=20; xx1=10; yy1=140; messize=3; col:array[16..31] of
byte=(0,186,113,4,40,41,41,42,42,43,44,69,15,15,15,15); title:array[0..messize] of string = ('АЛГОРИТМИЧЕСКИЕ МЕТОДЫ',
' ИССЛЕДОВАНИЯ ОПЕРАЦИЙ ', ' ', ' Метод Форда ');
type matr = array[0..20,0..20] of real; coord = array [1..20,1..2] of real;
var mas:matr; coord_point:coord; i,j,t,m,n,z,x1,y1,x2,kk,iii,y2,x,y,lenth,chrus,z1,z2:integer; k:array[1..20] of real; result:array[1..20] of integer; error_code:array[1..5] of byte; fire1:array[1..yyy,1..xxx] of byte; fire2:array[1..yyy,1..xxx] of byte; mask:array[1..6] of byte; starx:array[1..500] of word; stary:array[1..500] of word; starc:array[1..500] of byte; aa,cc,pi1,s:real; l,inputdata,calculatedata,move:boolean; o:string; temp,cursor,lastcursor,menulevel,nline,step:byte; pressed:char; f1,f2:text;
FUNCTION min:real;
begin s:=0; for i:=1 to n do if (s=0) and (k[i]-1) then s:=k[i] else if(k[i]