Помогите пожалуйста в паскале.Найти max элемент матрицы и их кол-во.

0 голосов
32 просмотров

Помогите пожалуйста в паскале.Найти max элемент матрицы и их кол-во.


Информатика (26 баллов) | 32 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
  Writeln('*** Исходная матрица [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-50,50);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var s:=a.Rows.SelectMany(x->x);
  var max:=s.Max;
  Writeln('Максимум ',max, ' встречается ',
      s.Where(x->x=max).Count,' раз(а)')
end.

Пример
Количество строк и столбцов в матрице: 6 11
*** Исходная матрица [6,11] ***
  15  19  26   0 -21 -42   8  -9  -7  21  19
  -7 -49  23 -10   8  -9 -50 -31   8 -49 -36
 -42 -45 -49 -11   3 -45 -20  45 -29  39  13
   9  45 -19   9 -31 -38  29  27  39  13  36
 -47  28  44   8 -22  28   7 -25  -3  -9  39
   1  11  20  -1  40   5   2 -40  -2  -1  30
--------------------------------------------
Максимум 45 встречается 2 раз(а)
(150k баллов)