Создайте собственную библиотеку в Pascal с тремя подпрограммами

Создайте собственную библиотеку в Pascal с тремя подпрограммами
Гость
Ответ(ы) на вопрос:
Гость
1. Создаем файл MatInt.pas следующего содержания: // PascalABC.NET 3.1, сборка 1230 от 27.04.2016 unit MatInt; interface type   Matrix=array[,] of integer; function MatCreate(m,n:integer):Matrix; procedure MatPrint(a:Matrix;w:integer); procedure MatMax(a:Matrix;var x,imax,jmax:integer); implementation function MatCreate(m,n:integer):Matrix; // создает матрицу и инициализирует её нулями begin   SetLength(Result,m,n); end; procedure MatPrint(a:Matrix;w:integer); // выводит матрицу, отводя w позиций под элемент begin   var n:=Length(a,1)-1;   for var i:=0 to Length(a,0)-1 do begin     for var j:=0 to n do Write(a[i,j]:w);     Writeln     end end; procedure MatMax(a:Matrix;var x,imax,jmax:integer); // возвращает значение максимального элемента и его координаты begin   imax:=0; jmax:=0;   var n:=Length(a,1)-1;   for var i:=0 to Length(a,0)-1 do     for var j:=0 to n do       if a[i,j]>a[imax,jmax] then (imax,jmax):=(i,j);   Inc(imax); Inc(jmax); x:=a[imax-1,jmax-1] end; end. 2. Компилируем файл, получая библиотеку MatInt.pcu 3. Пишем основную программу: // PascalABC.NET 3.1, сборка 1230 от 27.04.2016 uses   MatInt; begin   var a:=MatCreate(5,8);   var n:=Length(a,1)-1;   for var i:=0 to Length(a,0)-1 do   for var j:=0 to n do a[i,j]:=Random(-50,50);   MatPrint(a,4);   var irow,jcol,max:integer;   MatMax(a,max,irow,jcol);   Writeln('Максимальный А[',irow,',',jcol,']=',max) end. Тестовое решение   11 -16  11  16  23  -4 -17 -34  -12  -5  20   9  16  47  43  17  -46 -26  47 -40  12 -31 -25  13   -7  39 -20  26  11 -19  32 -15   45 -10 -28  31 -46 -29 -29 -22 Максимальный А[2,6]=47
Не нашли ответ?
Ответить на вопрос
Похожие вопросы