Дана матрица, найти максимальный элемент, среди положительных элементов матрицы А - Free Pascal

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

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

Дана матрица А(5,5) 1.Найти новый одномерный массив С из произведений элементов каждой строки матрицы А. 2.Найти максимальный элемент , среди положительных элементов матрицы А. 3.Заменить третий элемент в 1 строке матрицы А на найденный максимальный элемент. Как решить задачу?Прошу помощи!

Решение задачи: «Дана матрица, найти максимальный элемент, среди положительных элементов матрицы А»

textual
Листинг программы
Const
  n=5;
Type
  Mas=array[1..n,1..n] of integer;
var
  a: mas;
  i,j,max: integer;
BEGIN
  randomize;
  max:=a[1,1];
  for i:=1 to n do
    begin
      for j:=1 to n do
        begin
          a[i,j]:=random(n*n)-n*n div 2;
          write(a[i,j]:4);
          if (max<a[i,j]) AND (a[i,j]>0) then
            max:=a[i,j];
       end;
      writeln;
    end;
  if max<=0 then
    writeln('В массиве нет положительных элементов.')
  else
    Writeln('max= ',max);
  a[1,3]:=max;
  writeln('Преобразованный массив.'); 
  for i:=1 to n do
    begin
      for j:=1 to n do
        write(a[i,j]:4);
      writeln;
    end;
 
  readln;
 
END.

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

  1. Объявляются константы и переменные: — n = 5 (размерность матрицы) — Mas = array[1..n,1..n] of integer (тип матрицы) — a = var mas (объявление переменной для хранения матрицы) — i, j, max = var integer (объявление переменных для циклов и хранения максимального элемента)
  2. Выполняется инициализация генератора случайных чисел: randomize;
  3. Инициализируется переменная max значением первого элемента первой строки матрицы: max := a[1,1];
  4. Два вложенных цикла заполняют матрицу случайными числами: for i := 1 to n do for j := 1 to n do a[i,j] := random(nn)-nn div 2;
  5. Выполняется проверка на положительность элемента и обновление max при необходимости: for i := 1 to n do for j := 1 to n do write(a[i,j]:4); writeln; if (max < a[i,j]) AND (a[i,j] > 0) then max := a[i,j];
  6. Выводится сообщение о наличии положительных элементов в матрице: if max <= 0 then writeln('В массиве нет положительных элементов.'); else Writeln('max= ',max);
  7. Максимальный элемент копируется в первую ячейку третьей строки матрицы: a[1,3] := max;
  8. Выводится преобразованный матрица: for i := 1 to n do for j := 1 to n do write(a[i,j]:4); writeln;
  9. Запрашивается ввод для завершения работы программы: readln;
  10. Код заканчивается.

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


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

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

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