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

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

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

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

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

textual
Листинг программы
  1. Const
  2.   n=5;
  3. Type
  4.   Mas=array[1..n,1..n] of integer;
  5. var
  6.   a: mas;
  7.   i,j,max: integer;
  8. BEGIN
  9.   randomize;
  10.   max:=a[1,1];
  11.   for i:=1 to n do
  12.     begin
  13.       for j:=1 to n do
  14.         begin
  15.           a[i,j]:=random(n*n)-n*n div 2;
  16.           write(a[i,j]:4);
  17.           if (max<a[i,j]) AND (a[i,j]>0) then
  18.             max:=a[i,j];
  19.        end;
  20.       writeln;
  21.     end;
  22.   if max<=0 then
  23.     writeln('В массиве нет положительных элементов.')
  24.   else
  25.     Writeln('max= ',max);
  26.   a[1,3]:=max;
  27.   writeln('Преобразованный массив.');
  28.   for i:=1 to n do
  29.     begin
  30.       for j:=1 to n do
  31.         write(a[i,j]:4);
  32.       writeln;
  33.     end;
  34.  
  35.   readln;
  36.  
  37. 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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы