Найти максимальные элементы матрицы заштрихованной части(вертикальное песочные часы на матрице ) - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

найти максимальные элементы матрицы заштрихованной части(вертикальное песочные часы на матрице ) помогите решить очень срочно нужно

Решение задачи: «Найти максимальные элементы матрицы заштрихованной части(вертикальное песочные часы на матрице )»

textual
Листинг программы
uses crt;
const nmax=15;
var a:array[1..nmax,1..nmax] of byte;
    n,i,j,imx,jmx:byte;
begin
randomize;
repeat
write('Размер матрицы до ',nmax,' n=');
readln(n);
until n in [1..nmax];
for i:=1 to n do
for j:=1 to n do
a[i,j]:=random(64)+1;
imx:=1;
jmx:=1;
for i:=1 to n do
for j:=1 to n do
if (((j>=i)and(j<=n-i+1))or((j>=n-i+1)and(j<=i)))and(a[i,j]>a[imx,jmx])then
 begin
  imx:=i;
  jmx:=j;
 end;
writeln('Исходная матрица:');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    if ((j>=i)and(j<=n-i+1))or((j>=n-i+1)and(j<=i))then textcolor(13)
    else textcolor(0);
    if(i=imx)and(j=jmx) then textcolor(9);
    write(a[i,j]:4);
   end;
  writeln;
 end;
textcolor(9);
write('Максимальный элемент в выделенной области=',a[imx,jmx]);
end.

Объяснение кода листинга программы

  1. В начале программы объявляются переменные и массив для хранения информации о матрице и её элементах.
  2. Затем пользователю предлагается ввести размер матрицы, который должен быть не больше 15.
  3. После этого в цикле происходит заполнение матрицы случайными значениями от 1 до 64.
  4. Далее в цикле находят индексы максимального элемента в выделенной области (вертикальные песочные часы) и записывают его в переменные imx и jmx.
  5. Выводится исходная матрица с подсветкой выделенной области и максимальным элементом в ней.
  6. В конце программы выводится максимальный элемент в выделенной области.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.769 из 5
Похожие ответы