Для вирішення поставленого завдання доцільно використовувати підпрограми-процедури, так як процедури використовуються в тих випадках, коли в підпрограмі потрібно обчислити і передати в основну програму кілька результатів.
2. Таблиці відповідності позначень
Таблиця 1 - Опис ідентифікаторів процедури form
ІдентіфікаторНазначеніеm, nРазмер матриці (рядків, стовпців) a, b, cМатріциiТекущій номер строкіjТекущій номер стовпчика
Таблиця 2 - Опис ідентифікаторів процедури vivod
ИдентификаторНазначениеxВыводимая матріцаiТекущій номер строкіjТекущій номер столбцаm, nРазмер матриці (рядків, стовпців)
Таблиця 3 - Опис ідентифікаторів процедури poisk
ИдентификаторНазначениеbИсходная матріцаkНомер строкіlНомер столбцаiТекущій номер строкіjТекущій номер столбцаm, nРазмер матриці (рядків, стовпців)
Таблиця 4 - Опис ідентифікаторів функції razm_trans
ИдентификаторНазначениеlНомер стовпця нуляmКолічество строкkНомер рядки нуля
Таблиця 5 - Опис ідентифікаторів процедури trans
ИдентификаторНазначениеiТекущий номер строкіjТекущій номер столбцаgРазмер транспонированияvВременная змінна при транспонированииbМатрицаkНомер рядки нуляlНомер стовпця нуля
Таблиця 6 - Опис ідентифікаторів функції koli
ИдентификаторНазначениеiТекущий номер строкіjТекущій номер столбцасМатріцаsСчетчік суммиm, nРазмер матриці (рядків, стовпців)
Таблиця 7 - Опис ідентифікаторів процедури zamena
ИдентификаторНазначениеiТекущий номер строкіjТекущій номер столбцаm, nРазмер матриці (рядків, стовпців) cМатріца
3. Текст програми
Текст модуля stas
unit stas; p=10; matr=array [1 .. p, 1 .. p] of integer; form (m, n: integer; var a, b, c: matr); vivod (m, n: integer; x: matr); poisk (b: matr; m, n: integer; var k, l: integer); razm_trans (b: matr; m, n, k, l: integer): integer; trans (m, n, k, l: integer; var b: matr); koli (c: matr; m, n: integer): integer; zamena (m, n: integer; var c: matr); form ; i, j: integer; i:=1 to m doj:=1 to n do begin [i, j]:=random (20) - 10; [i, j]:=a [i, j]; [ i, j]:=a [i, j];;; vivod; i, j: integer; i:=1 to m do beginj:=1 to n do (x [i, j]: 4);;; ; poisk; 11; i, j: integer; i:=1 to m doj:=1 to n dob [i, j]=0 then begin:=i;:=j; 11;;
: end; razm_trans; l
end;.
Текст програми, що дозволяє налагодити модуль
uses crt, stas; a, b: matr; k, l, m, n: integer;;; («Vvedite razmer matricy»); (m, n); («ishodnaya matrica»); (a, b, m, n); (m, n, a); (a, m, n, k, l); (m, n, k, l, b); («izmenennaya matrica»); (m, n, b); koli (a, m,...