Определить номера строк матрицы rmatr[n, m], в которых знаки элементов чередуются. в среде программирования pascalabc.net

trekstreks919ozyvc1 trekstreks919ozyvc1    3   18.09.2019 06:20    0

Ответы
KaTeRiN13 KaTeRiN13  07.10.2020 23:26
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,m,-99,99);
  a.Println(4); Writeln(4*m*'-');
  var s:='';
  for var i:=0 to n-1 do
    if a.Row(i).Pairwise.Select(t->Sign(t[0])<>Sign(t[1])).All(t->t=True) then
      s+=(i+1)+' ';
  if s.Length=0 then Writeln('Нет искомых строк')
  else Writeln('Номера строк: ',s)
end.

Пример
Количество строк и столбцов в матрице: 10 5
*** Исходная матрица ***
 -27  90  57   3 -62
  35 -92 -54  36  17
 -57 -32 -31  85  84
  22 -82 -42 -26  87
 -69  75 -26 -88   7
 -76 -60 -73  35  45
  94  66  95 -85 -40
  83 -60  59 -56  49
 -81 -53  67  11  -9
 -39 -73  67 -49  91

Номера строк: 8
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика