Паскальabc дана матрица а(4,8) вывести все положительные элементы этой матрицы. найдите максимальный по модулю элемент

irinakotik17 irinakotik17    1   18.08.2019 18:00    0

Ответы
kluk12 kluk12  20.08.2020 11:22
// PascalABC.NET 3.2, сборка 1374 от 10.01.2017
// Внимание! Если программа не работает, обновите версию!

begin
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(4,8,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var sa:=a.Rows.SelectMany(x->x);
  Writeln('Положительные элементы:');
  sa.Where(x->x>0).Println;
  Write('Максимальный по модулю элемент: ',sa.Max(x->abs(x)));
end.

Пример
*** Исходная матрица ***
  80   9  -8  32  37  75  43 -72
  71 -79  94 -20 -64 -37 -98  53
  19  84 -63  -4  17   5  38 -86
 -32  56  87 -43  28 -40 -35  24

Положительные элементы:
80 9 32 37 75 43 71 94 53 19 84 17 5 38 56 87 28 24
Максимальный по модулю элемент: 98
ПОКАЗАТЬ ОТВЕТЫ
ddfgdfgdfg ddfgdfgdfg  20.08.2020 11:22
Const n=4; m=8;
var a:array [1..n, 1..m] of integer;
max:integer;
begin
max:=0;
for i:=1 to n do
for j:=1 to m do
a[i, j]:=random(100);
for i:=1 to n do
for j:=1 to m do begin
if a[i, j] > 0 then write('', a[i, j]);
if a[i, j] > max then max:=a[i, j];
end;
writeln;
writeln('max=', max);
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика