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

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

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

Составьте программу нахождения значение максимального элемента двухмерного массива размером N x N. Вывести значение максимального элемента и все пары индексов (номер строки, номер столбца) элементов, равных максимальному элементу, и посчитать их количество.

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

textual
Листинг программы
Const nmax=20;
Var A:array[1..nmax,1..nmax] of real;
    i,j,n,k:integer;
    max:real;
Begin
    Repeat
     write('Введите размерность матрицы: ');
     readln(n);
    Until (n>0)and(n<=nmax);
    writeln('Введите ',n,'x',n,' чисел матрицы');
    For i:=1 to n do
     For j:=1 to n do
      read(A[i,j]);
    writeln('Матрица');
    For i:=1 to n do
    Begin
      For j:=1 to n do
       write(A[i,j]:7:2);
      writeln;
    End;
    max:=A[1,1];
    For i:=1 to n do
     For j:=1 to n do
      if A[i,j]>max then max:=A[i,j];
    writeln('Max = ',max:0:2);
    k:=0;
    write('Пары индексов: ');
    For i:=1 to n do
     For j:=1 to n do
      if A[i,j]=max then 
      Begin
        max:=A[i,j];
        write('A[',i,',',j,']',' ');
        k:=k+1;
      End;
    writeln;
    writeln('Всего пар = ',k);
End.

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

  1. Создается константа nmax, которая определяет максимальное значение размера матрицы.
  2. Создается переменная A, которая представляет собой матрицу размером nmax x nmax.
  3. Создаются переменные i, j и n, которые будут использоваться для итерации по матрице.
  4. Создается переменная max, которая будет использоваться для хранения максимального значения в матрице.
  5. Запускается цикл Repeat, который продолжается до тех пор, пока условие (n>0) и (n<=nmax) истинно.
  6. Внутри цикла Repeat пользователю предлагается ввести размерность матрицы.
  7. Введенный размер вводится в переменную n.
  8. Цикл For i:=1 до n do повторяется n раз.
  9. Внутри первого цикла For i:=1 до n do пользовательу предлагается ввести значения для каждой строки матрицы.
  10. Значения вводятся в переменную A[i,j].
  11. После того, как все значения введены, выводится матрица.
  12. Вычисляется максимальное значение в матрице и сохраняется в переменной max.
  13. Запускается цикл For i:=1 до n do.
  14. Внутри второго цикла For i:=1 до n do проверяется, является ли текущее значение в матрице максимальным.
  15. Если текущее значение больше max, то max обновляется.
  16. Если текущее значение равно max, то выводится пара индексов (i, j) и счетчик k увеличивается на 1.
  17. После завершения второго цикла For выводится количество пар индексов.
  18. Конец программы.

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


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

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

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