В квадратной матрице заменить предпоследний столбец первой из строк, в которой находится максимальный элемент - 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.
Объяснение кода листинга программы
- В начале объявляются все необходимые переменные.
- Затем идет процедура чтения матрицы, которая считывает каждый элемент матрицы и сохраняет его в соответствующую переменную.
- После этого идет процедура записи матрицы, которая выводит каждый элемент матрицы на экран.
- Далее идет процедура поиска максимального элемента в матрице.
- Затем идет процедура создания новой матрицы на основе старой и переменной c.
- В конце выводится полученная матрица.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д