
Афиноген
7 год назад
Помогите написать программу в Паскаль.Для произвольной матрицы строку с наибольшей суммой элементов переписать в обратном порядке программа.
ОТВЕТЫ

Pabasomno
Jul 13, 2019
// PascalABC.NET 3.2, сборка 1362 от 14.12.2016
// Внимание! В других версиях языка работа не гарантируется!
begin
var m:=ReadInteger(Количество строк в массиве:);
var n:=ReadInteger(Количество столбцов в массиве:);
Writeln(*** Исходный массив A[,m,,,n,] ***);
var a:=MatrRandom(m,n,-50,50);
a.Println(4);
Writeln(4*a.ColCount*-);
var k:=a.Rows.Select(x-gt;x.Aggregate(0,(x,y)-gt;x+y)).ToArray.IndexMax;
for var j:=0 to (n-1) div 2 do Swap(a[k,j],a[k,n-1-j]);
a.Println(4)
end.
Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 5
*** Исходный массив A[4,5] ***
29 36 -50 -4 -32
-1 -10 -7 -47 -50
-16 4 48 -41 -43
8 46 45 14 -44
--------------------
29 36 -50 -4 -32
-1 -10 -7 -47 -50
-16 4 48 -41 -43
-44 14 45 46 8
// Внимание! В других версиях языка работа не гарантируется!
begin
var m:=ReadInteger(Количество строк в массиве:);
var n:=ReadInteger(Количество столбцов в массиве:);
Writeln(*** Исходный массив A[,m,,,n,] ***);
var a:=MatrRandom(m,n,-50,50);
a.Println(4);
Writeln(4*a.ColCount*-);
var k:=a.Rows.Select(x-gt;x.Aggregate(0,(x,y)-gt;x+y)).ToArray.IndexMax;
for var j:=0 to (n-1) div 2 do Swap(a[k,j],a[k,n-1-j]);
a.Println(4)
end.
Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 5
*** Исходный массив A[4,5] ***
29 36 -50 -4 -32
-1 -10 -7 -47 -50
-16 4 48 -41 -43
8 46 45 14 -44
--------------------
29 36 -50 -4 -32
-1 -10 -7 -47 -50
-16 4 48 -41 -43
-44 14 45 46 8
284