// PascalABC.NET 3.3, сборка 1600 от 23.12.2017 // Внимание! Если программа не работает, обновите версию!
begin var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:'); Writeln('*** Исходный массив ***'); var a:=MatrRandom(m,n,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var b:=a.Cols.Select(x->x.Sum).ToArray; b.Println end.
// PascalABC.NET 3.3, сборка 1600 от 23.12.2017 // Внимание! Если программа не работает, обновите версию!
begin var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:'); Writeln('*** Исходная матрица ***'); var a:=MatrRandom(n,m,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var (q,k):=ReadInteger2('Укажите номера строк q и k:'); Assert((k<>q) and k.Between(1,n) and q.Between(1,n),'Неверная пара (q,k)'); k-=1; q-=1; // перешли к индексам var rk:=a.Row(k); if k<q then begin for var r:=k+1 to q do a.SetRow(r-1,a.Row(r)); a.SetRow(q,rk) end else begin for var r:=k-1 downto q+1 do a.SetRow(r+1,a.Row(r)); a.SetRow(q+1,rk) end; Writeln('*** Результат ***'); a.Println(4) end.