Матрица: главная и побочная диагональ - Pascal
Формулировка задачи:
Найти сумму среднее геометрическое элементов главной диагонали и минимальное отрицательное побочной дигонали матрицы x(5,5).
Помогите убрать от сюда ошибки, что бы оно заработало так как надо )
const n=5;m=5; var x:array [1..n,1..m] of ineteger; a,k,i,j,p,max:integer; Sg:real; begin for i:=1 to n do for j:=1 to m do readln(x[i,j]); k:=0;p:=1; for i:=1 to n do if x[i,j]>0 then begin p:=p*x[i,j]; k:=k+1; end; Sg:=exp(1/k*ln(p)); begin max:=-maxint; for i:=1 to n do for j:=1 to m do if i+j=6 then if x[i,j]>max then if x[i,j]<0 then max:=x[i,j]; a:=max; end; writeln('Sg',Sg,'a=',a) end.
Решение задачи: «Матрица: главная и побочная диагональ»
textual
Листинг программы
uses crt; const n=5; var x:array [1..n,1..n] of integer; i,j,sm,mn,k:integer; sg:real; begin clrscr; writeln('Введите ',n*n,' элементов матрицы:'); for i:=1 to n do for j:=1 to n do begin write('x[',i,',',j,']='); readln(x[i,j]); end; clrscr; writeln('Матрица:'); for i:=1 to n do begin for j:=1 to n do write(x[i,j]:4); writeln; end; sm:=0;sg:=1;k:=0; for i:=1 to n do if x[i,i]>0 then begin k:=k+1; sm:=sm+x[i,i]; sg:=sg*x[i,i]; end; writeln('Сумма положительных элементов главной диагонали=',sm); writeln('Среднее геометрическое их=',exp(ln(sg)/k):0:2); mn:=maxint; k:=0; for i:=1 to n do if x[i,n-i+1]<0 then begin k:=1; if x[i,n-i+1]<mn then mn:=x[i,n-i+1]; end; if k=0 then write('На побочной диагонали нет отрицательных элементов!') else write('Минимальный из отрицательных на побочной диагонали=',mn); readln end.
Объяснение кода листинга программы
- Создается матрица nхn, где n - это число, введенное пользователем.
- Выводится запрос на ввод элементов матрицы.
- В цикле for i:=1 до n выполняется два вложенных цикла for j:=1 до n. Внутри них выводится запрос на ввод элемента матрицы x[i,j].
- После завершения циклов выводится матрица в формате, который представлен в задаче.
- Затем вычисляются сумма положительных элементов главной диагонали (sm) и среднее геометрическое их (sg).
- Выводится сумма положительных элементов главной диагонали (sm) и среднее геометрическое их (sg).
- Затем находится минимальный из отрицательных элементов на побочной диагонали (mn).
- В конце выводится сообщение, указывающее, есть ли отрицательные элементы на побочной диагонали или нет.
- Если отрицательных элементов нет, выводится сообщение
На побочной диагонали нет отрицательных элементов!
. - Если отрицательные элементы есть, выводится сообщение
Минимальный из отрицательных на побочной диагонали=
, а затем значение минимального отрицательного элемента (mn).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д