В квадратной матрице заменить предпоследний столбец первой из строк, в которой находится максимальный элемент - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Дана квадратная матрица. Заменить предпоследний столбец первой из строк, в которой находится максимальный элемент. Использовать подпрограммы.

Решение задачи: «В квадратной матрице заменить предпоследний столбец первой из строк, в которой находится максимальный элемент»

textual
Листинг программы
const n=4;
type t_matr=array[1..n, 1..n] of integer;
procedure read_mas(var a:t_matr);
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
readln(a[i,j]);
end;
procedure write_mas(a:t_matr);
var i,j:integer;
begin
for i:=1 to n do
 begin
  for j:=1 to n do
  write(a[i,j]:5);
  writeln;
 end;
end;
procedure search_string(a:t_matr; var c:integer);
var i,j,max:integer;
begin
c:=1;
max:=a[1,1];
for i:=1 to n do
for j:=1 to n do
if max<a[i,j] then
 begin
  max:=a[i,j];
  c:=i;
 end;
end;
procedure new_mas(a:t_matr;var b:t_matr; c:integer);
var i,j:integer;
begin
for i:=1 to n do
for j:=1 to n do
if j=n-1 then b[i,j]:=a[c,i]
else b[i,j]:=a[i,j];
end;
var a,b:t_matr;
    c:integer;
begin
read_mas(a);
writeln(' Исходная матрица*');
write_mas(a);
search_string(a,c);
new_mas(a,b,c);
writeln(' Полученная матрица*');
write_mas(b);
end.

Объяснение кода листинга программы

  1. В начале объявляются все необходимые переменные.
  2. Затем идет процедура чтения матрицы, которая считывает каждый элемент матрицы и сохраняет его в соответствующую переменную.
  3. После этого идет процедура записи матрицы, которая выводит каждый элемент матрицы на экран.
  4. Далее идет процедура поиска максимального элемента в матрице.
  5. Затем идет процедура создания новой матрицы на основе старой и переменной c.
  6. В конце выводится полученная матрица.

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы