Много дана матрица, содержащая как положительные, так и отрицательные элементы размером n на m. сформируйте из заданой матрицы новую удалить все строки, содержащие только положительные элементы.

vickyin1519 vickyin1519    3   16.09.2019 10:20    5

Ответы
juu2 juu2  07.10.2020 19:30
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,m,-10,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var L:=new List<integer>; // для номеров подходящих строк
  for var i:=0 to n-1 do
    if a.Row(i).Any(t->t<=0) then L.Add(i);
  n:=L.Count;
  if n=0 then begin
    Writeln('Все строки содержат только положительные элементы');
    exit
    end;
  var b:=new integer[n,m];
  for var i:=0 to n-1 do
    b.SetRow(i,a.Row(L[i]));
  Writeln('*** Результирующая матрица ***');
  b.Println(4)
end.

Пример
Количество строк и столбцов в матрице: 5 4
*** Исходная матрица ***
  12  -9  64  34
  53  64  49  74
  33  27  -6  72
  91  14  23  16
  15  64   9  77
----------------
*** Результирующая матрица ***
  12  -9  64  34
  33  27  -6  72

Много дана матрица, содержащая как положительные, так и отрицательные элементы размером n на m. сфор
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика