Сформировать новую матрицу B, изъяв из матрицы A строку, в которой расположен максимальный элемент - PascalABC.NET
Формулировка задачи:
Здравствуйте. С Новым годом всех !
Помогите, пожалуйста, дорешать задачу : Сформировать новую матрицу B, изъяв из матрицы A строку, в которой расположен максимальный элемент среди элементов главной диагонали.
Решение задачи: «Сформировать новую матрицу B, изъяв из матрицы A строку, в которой расположен максимальный элемент»
textual
Листинг программы
var a,b:array[1..4,1..4] of real; max,imax:real; n,m,i,j:integer; begin randomize; n:=4; writeln('Матрица А:'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=-20+random*(40); write(a[i,j]:8:2); if(i=1)and(j=1) then begin max:=a[1,1]; imax:=i; end else if (j=i)and(a[i,j]>max) then begin max:=a[i,j]; imax:=i; end; end; writeln; end; writeln('Максимальный элемент главной диагонали=',max:0:2,', обнаружен в строке ',imax); writeln('Матрица В'); m:=0; for i:=1 to n do if i<>imax then begin m:=m+1; for j:=1 to n do b[m,j]:=a[i,j]; end; for i:=1 to m do begin for j:=1 to n do write(b[i,j]:8:2); writeln; end; end.
Объяснение кода листинга программы
- Объявлены четыре переменные: a, b, max, imax типа array[1..4,1..4] of real.
- Задается размерность матрицы n=4.
- Выводится шаблон вывода матрицы А.
- Внутренний цикл перебирает элементы строки от 1 до 4.
- Внешний цикл перебирает элементы столбца от 1 до 4.
- Элементы матрицы А выводятся с шагом 2 знака после запятой.
- Если элемент (i,j) является элементом главной диагонали и равен максимальному элементу, то он заменяет значение переменной max и imax.
- Если элемент (i,j) равен максимальному элементу, но не является элементом главной диагонали, то он заменяет значение переменной max, но не imax.
- После вывода всех элементов матрицы А выводится максимальный элемент главной диагонали и номер строки, в которой он находится.
- Выводится шаблон вывода матрицы В.
- Переменная m инициализируется нулем. Она будет использоваться для подсчета количества строк матрицы В.
- Внутренний цикл перебирает элементы строки от 1 до 4.
- Если номер строки не равен номеру строки, содержащей максимальный элемент, то:
- переменная m увеличивается на единицу;
- внутренний цикл перебирает элементы столбца от 1 до 4;
- элемент матрицы А копируется в элемент матрицы В с индексом (m,j);
- после вывода всех элементов матрицы В выводится количество строк m.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д