Задана матрица целых чисел определить максимальный элемент этой матрицы и записать нули в строку в которой он находится - Pascal

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

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

В этой программе в том случае если максимальный элемент повторяется, она меняет на нули только одну строку, а нужно чтобы менялись все строки, в которых содержится максимальный элемент. Как это реализовать? Заранее спасибо за помощь!

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

textual
Листинг программы
program z;
uses crt;
var i,j,max,n,k:integer;
    a:array [1..100,1..100] of integer;
    s:set of byte;
begin
write('Размерность матрицы: ');
readln(n);
clrscr;
randomize;
writeln('Случайная матрица: ');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=-10+random(21);
    write(a[i,j]:4);
    if i*j=1 then max:=a[i,j]
    else if a[i,j]>max then max:=a[i,j];
   end;
  writeln;
 end;
s:=[];//множество строк где есть максимум
for i:=1 to n do
for j:=1 to n do
if a[i,j]=max then s:=s+[i];
for i:=1 to n do
if i in s then  //если строка в множестве
for j:=1 to n do
a[i,j]:=0; //меняем элементы на 0
writeln('Результат: ');
for i:=1 to n do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln;
 end;
end.

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

  1. Задается размерность матрицы в виде целочисленного значения.
  2. Создается матрица целых чисел размером n на n.
  3. Заполняется матрица случайными целыми числами от -10 до 10.
  4. Находится максимальный элемент матрицы и сохраняется в переменной max.
  5. Создается пустое множество s, которое будет содержать номера строк, в которых встречается максимальный элемент.
  6. Происходит двойной цикл по всем элементам матрицы.
  7. Если элемент матрицы равен max, то он записывается в множество s.
  8. Происходит двойной цикл по всем элементам матрицы.
  9. Если номер строки из множества s, то все элементы этой строки заменяются на 0.
  10. Выводится исходная матрица.
  11. Выводится матрица, в которой нулями заменены элементы в строках, где был найден максимальный элемент.

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


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

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

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