Вданной квадратной матрице порядка n найти сумму элементов столбцов, в которой расположены элемент с наименьшим значением. предполагается что такой элемент единственный
// PascalABC.NET 3.3, сборка 1549 от 17.10.2017 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('Количество строк/столбцов в матрице:'); Writeln('*** Исходная матрица ***'); var a:array[,] of integer; repeat // обеспечить уникальность элементов a:=MatrRandom(n,n,-999,999) until a.Rows.SelectMany(x->x).Distinct.Count=n*n; a.Println(5); Writeln(5*a.ColCount*'-'); var jmin:=a.ElementsWithIndexes.MinBy(t->t[0])[2]; Writeln(a.Col(jmin).Sum) end.
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:array[,] of integer;
repeat // обеспечить уникальность элементов
a:=MatrRandom(n,n,-999,999)
until a.Rows.SelectMany(x->x).Distinct.Count=n*n;
a.Println(5); Writeln(5*a.ColCount*'-');
var jmin:=a.ElementsWithIndexes.MinBy(t->t[0])[2];
Writeln(a.Col(jmin).Sum)
end.
Пример
Количество строк/столбцов в матрице: 7
*** Исходная матрица ***
666 963 808 847 -383 -453 695
-233 -460 -311 606 -487 -243 -29
479 438 -985 184 499 92 556
-54 819 38 -962 790 -411 -155
-320 525 340 390 76 -617 -747
-439 585 332 -654 495 602 372
551 229 906 837 480 -211 -438
1128