// PascalABC.NET 3.2, сборка 1387 от 17.02.2017
// Внимание! Если программа не работает, обновите версию!
begin
var m:=4;
var n:=5;
var a:=MatrRandom(m,n,10,99);
a.Println(3); Writeln('-'*3*n);
Writeln('Произведение элементов первой строки: ',
a.Row(0).Aggregate(int64(1),(a,b)->a*b));
Writeln('Сумма элементов пятого столбца: ',a.Col(4).Sum);
var b:=a.Cols.Select(x->x.Min).ToArray;
b.Print; Writeln(' - минимумы поколонно');
var im:=b.IndexMin;
Writeln('Удаляем столбец ',im+1,' с минимальным элементом');
n-=1;
var c:=new integer[m,n];
for var i:=0 to m-1 do
for var j:=0 to n-1 do
if j else c[i,j]:=a[i,j+1];
c.Print(3); Writeln('-'*3*n);
Writeln('Транспонируем матрицу');
c:=Transpose(c); c.Print(3)
end.
Пример
96 44 59 13 77
41 15 19 20 37
43 63 51 87 85
26 39 49 84 85
---------------
Произведение элементов первой строки: 249465216
Сумма элементов пятого столбца: 284
26 15 19 13 37 - минимумы поколонно
Удаляем столбец 4 с минимальным элементом
96 44 59 77
41 15 19 37
43 63 51 85
26 39 49 85
------------
Транспонируем матрицу
96 41 43 26
44 15 63 39
59 19 51 49
77 37 85 85