Вывести позицию наибольшего элемента на главной диагонали матрицы - Pascal
Формулировка задачи:
Что нужно добавить, чтобы выводило позицию наибольшего элемента главной диагонали?
Наибольший элемент на главной диагонали и вывести его на экран.
Const nmax = 20; Var A:array[1..nmax,1..nmax] of integer; i,j,n:integer; max:integer; Begin Repeat write('N: '); readln(n); Until (n>0)and(n<=nmax); For i:=1 to n do Begin For j:=1 to n do Begin A[i,j]:=random(31)-15; write(A[i,j]:4); End; writeln; End; max:=A[1,1]; For i:=2 to n do if A[i,i]>max then max:=A[i,i]; writeln('Max элемент лежащий на главной диагонали = ',max); readln; End.
Решение задачи: «Вывести позицию наибольшего элемента на главной диагонали матрицы»
textual
Листинг программы
Const nmax = 20; Var A:array[1..nmax,1..nmax] of integer; i,j,n,max,ind:integer; Begin Repeat write('Введите размер матрицы от 2 до ',nmax,' n='); readln(n); Until n in [1..nmax]; For i:=1 to n do Begin For j:=1 to n do Begin A[i,j]:=-15+random(31); write(A[i,j]:4); End; writeln; End; max:=A[1,1]; ind:=1; For i:=2 to n do if A[i,i]>max then begin max:=A[i,i]; ind:=i; end; writeln('Max элемент лежащий на главной диагонали A[',ind,',',ind,']=',max); readln; End.
Объяснение кода листинга программы
- Объявляется константа
nmax
и переменныеA
,i
,j
,n
,max
иind
. - Повторно запрашивается ввод размера матрицы до тех пор, пока значение не попадет в диапазон от 1 до
nmax
. - Инициализируется матрица
A
случайными целыми числами от -15 до 15 и выводится на экран. - Инициализируются переменные
max
иind
значением элемента матрицыA
на главной диагонали (первый элемент). - В цикле происходит поиск наибольшего элемента на главной диагонали матрицы.
- Выводится результат:
Max элемент лежащий на главной диагонали A[индекс,индекс]=максимальное_значение
. - Ожидается ввод пользователя, чтобы завершить выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д