Среднее арифметическое наибольшего и наименьшего значений элементов матрицы ниже главной диагонали - Turbo Pascal
Формулировка задачи:
Пусть дана вещественная матрица размером n*m. Найдите среднее арифметическое наибольшего и наименьшего значений её элементов, расположенных ниже главной диагонали.- это условие.
Напиши пожалуйста программу!
Решение задачи: «Среднее арифметическое наибольшего и наименьшего значений элементов матрицы ниже главной диагонали»
textual
Листинг программы
uses crt; const nmax=15; var a:array[1..nmax,1..nmax] of real; m,n,i,j,x:byte; mn,mx:real; begin clrscr; randomize; repeat write('Количество строк от 2 до ',nmax,' n='); readln(n); until n in [1..nmax]; repeat write('Количество столбцов от 2 до до ',nmax,' m='); readln(m); until m in [1..nmax]; writeln('Исходная матрица:'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=9*random; write(a[i,j]:5:2); end; writeln; end; mn:=a[2,1]; mx:=a[2,1]; if n>m then x:=m else x:=n; for i:=2 to x do for j:=1 to i-1 do begin if a[i,j]<mn then mn:=a[i,j]; if a[i,j]>mx then mx:=a[i,j]; end; writeln('Минимальное значение ниже главной диагонали=',mn:0:2); writeln('Максимальное значение ниже главной диагонали=',mx:0:2); writeln('Их среднее=',(mn+mx)/2:0:2); readln end.
Объяснение кода листинга программы
- Создается переменная
nmax
и присваивается ей значение 15. - Создается переменная
a
типаarray[1..nmax,1..nmax] of real;
. - Создаются три переменные
m
,n
иi
типаbyte
. - Создаются две переменные
mn
иmx
типаreal
. - Выполняется цикл
repeat
, который запрашивает у пользователя количество строк и столбцов матрицы. - Внутри цикла
repeat
выводится сообщение с запрошенными значениями. - Вычисляются минимальное и максимальное значения матрицы.
- Выводится сообщение с найденными значениями.
- Вычисляется среднее арифметическое из минимального и максимального значений.
- Выводится сообщение с найденным значением среднего арифметического.
- Выполняется цикл
readln
, чтобы дождаться ввода пользователя.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д