Программа
CONST Power=3; { Размерность матрицы (количество строк и столбцов) }
TYPE Matrix=array [1..Power,1..Power] of real; { Тип - матрица }
Index=record Column,Line:byte end; { Тип - индекс }
VAR C:Matrix; { Матрица }
MaxInd:Index; { Индекс максимального элемента }
PROCEDURE GetMaxInd (B:Matrix;var MaxInd:Index);
{ Процедура поиска индекса максимального элемента матрицы }
Var i,j:word; { Счетчики }
Begin
with MaxInd do
begin
{ Начальное определение индекса максимального элемента: }
Column:=1;
Line:=1;
for i:=1 to Power do { Цикл просмотра строк матрицы }
for j:=1 to Power do { Цикл прсмотра элементов матрицы }
if Abs(B[i,j])>Abs(B[Line,Column])
{ Если текущий элемент превосходит максимальный,
то - переопределение индексов }
then begin
Line:=i;
Column:=j
end
end
End;
PROCEDURE InputMatrix (var B:Matrix); { Процедура ввода матрицы }
Var i,j:word; { Счетчики }
Begin
for i:=1 to Power do { Цикл ввода строк матрицы }
for j:=1 to Power do { Цикл ввода элементов матрицы }
begin
Write('Введите элемент [',i,',',j,'] ');
{ Вывод приглашения ввести элемент матрицы }
ReadLn(B[i,j]) { Ввод элемента матрицы }
end
End;
PROCEDURE OutputMatrix (B:Matrix); { Процедура вывода матрицы }
Var i,j:word; { Счетчики }
Begin
for i:=1 to Power do { Цикл вывода строк матрицы }
begin
for j:=1 to Power do { Цикл вывода элементов матрицы }
Write (B[i,j]:5:1,' '); { Вывод элемента матрицы }
WriteLn { Вывод конца строки }
end
End;
BEGIN
WriteLn; { Пропуск строки }
InputMatrix(C); { Ввод матрицы }
WriteLn; { Пропуск строки }
WriteLn(' Матрица: '); { Вывод заголовка }
OutputMatrix(C); { Вывод матрицы }
GetMaxInd(C,MaxInd); { Получение индекса максимального элемента матрицы }
WriteLn('Максимальный по модулю элемент: c[',MaxInd.Column,',',MaxInd.Line,']=',C[MaxInd.Column,MaxInd.Line]:4:1)
END.
Бесплатные примеры программ
Примеры написанных программ
Помощь студентам по программированию