Упорядочить по убыванию максимальные элементы матриц - Pascal

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

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

Даны три матрицы А, B, С Упорядочить по убыванию три числа х, у, z, где х - максимальный элемент матрицы А, в - максимальный элемент матрицы В, z - максимальный элемент матрицы С. Поиск максимального элемента матрицы оформить в виде процедуры.

Решение задачи: «Упорядочить по убыванию максимальные элементы матриц»

textual
Листинг программы
program pr;
 
type
  arr = array [1..100, 1..100] of integer;
 
var
  a, b, c: arr;
  m, n, x, y, z, t: integer;
 
procedure fillshow(var v: arr; n: integer;  m: integer);
var
  i, j: integer;
begin
  randomize;
  for i := 1 to n do
    for j := 1 to m do
      v[i, j] := random(21)-10;
  for i := 1 to n do
  begin
    for j := 1 to m do
      write(v[i, j]:3);
    writeln;
  end;
end;
 
procedure find(var v: arr; var av: integer);
var
  i, j, max, index: integer;
begin
  max := v[1, 1];
  for i := 1 to n do
    for j := 1 to m do
      if v[i, j] >= max then
      begin
        max := v[i, j];
        index := i;
      end;
  av := max;
end;
 
begin
  writeln('Введите количество строк матрицы A');
  readln(n);
  writeln('Введите количество столбцов матрицы A');
  readln(m);
  fillshow(a, n, m);
  find(a, x);
  writeln;
  writeln('Введите количество строк матрицы B');
  readln(n);
  writeln('Введите количество столбцов матрицы B');
  readln(m);
  fillshow(b, n, m);
  find(b, y);
  writeln;
  writeln('Введите количество строк матрицы C');
  readln(n);
  writeln('Введите количество столбцов матрицы C');
  readln(m);
  writeln;
  fillshow(c, n, m);
  find(c, z);
  writeln;
  if (x < y) then
  begin
    t := x;
    x := y;
    y := t;
  end;
  if (y < z) then
  begin
    t := y;
    y := z;
    z := t;
  end;
  if (x < y) then
  begin
    t := x;
    x := y;
    y := t;
  end;
  writeln(x, ' ', y, ' ', z)
end.

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

  1. Объявляются тип данных и переменные:
    • Тип данных arr для хранения двумерных массивов размером 100x100 с элементами типа integer.
    • Три массива a, b, c типа arr для хранения матриц.
    • Переменные m, n, x, y, z, t типа integer для хранения различных значений.
  2. Описывается процедура fillshow, которая заполняет переданный массив случайными числами и выводит его содержимое на экран.
  3. Описывается процедура find, которая находит максимальный элемент в матрице и возвращает его значение через параметр av.
  4. В основной программе происходит следующее:
    • Запрашивается у пользователя количество строк и столбцов для матрицы A.
    • Матрица A заполняется случайными числами и выводится на экран.
    • Вызывается процедура find для матрицы A и найденное значение максимального элемента сохраняется в переменной x.
    • Повторяются те же действия для матриц B и C, соответственно найденные максимальные значения сохраняются в переменных y и z.
  5. Производится сравнение найденных максимальных значений и их перестановка в случае необходимости, чтобы получить их в порядке убывания.
  6. На экран выводятся значения переменных x, y, z.

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


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

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

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