(Pascal)Дан двумерный целочисленный массив 1) найти максимальный элемент массива не...

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

(Pascal)Дан двумерный целочисленный массив
1) найти максимальный элемент массива не превосходящий данного числа N.
2)найти максимальный элемент и его положение в массиве.


Информатика (48 баллов) | 57 просмотров
0

Тебе нужен именно весь код?

0

Или подпрограмма

0

весь

0

Коментарии нужны, или сам разберёшься?

0

коменты под тем что делают не надо , а вот если в конце как на выходе будет то да

0

я надеюсь ты понял :D

Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1374 от 10.01.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-50,50);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var b:=a.Rows.SelectMany(x->x).ToArray;
  var nn:=ReadInteger('1. Введите число N:');
  Write('Максимальный из элементов, не превосходящий N');
  if nn  else Writeln(', равен ',b.Where(x->x<=nn).Max);<br>  Write('2. Максимальный элемент в массиве [');
  var i:=b.IndexMax;
  Writeln(i div n+1,',',i mod n+1,']=',a[i div n,i mod n])
end.

Пример
Количество строк в массиве: 5
Количество столбцов в массиве: 9
*** Исходный массив [5,9] ***
 -18 -13  16  23 -14 -30 -12  -2  -2
 -34  11 -47 -35  20  44  29 -36  46
   2 -28 -35  -6  38  -9  -2   8 -10
   3  16   5 -20   8   5  48   7 -33
 -25   3  30 -35 -10  22 -11  42 -44
------------------------------------
1. Введите число N: 31
Максимальный из элементов, не превосходящий N, равен 30
2. Максимальный элемент в массиве [4,7]=48
(150k баллов)
0

у меня твое не очень подходит , хоть и правильное но все равно спс

0

я просто версию не помню