Выбрать строку с наибольшей суммой элементов и вывести элементы этой строки в вектор

Alexander 1997

Задана матрица Z(6,5). Выбрать строку с наибольшей суммой элементов и вывести элементы этой строки в вектор, затем каждый отрицательный элемент умножить на номер столбца. Вывести результат в виде матрицы и вектора.
program z15;
var a: array[1..6, 1..5] of integer;
i, j, sum1, sum2,sum3,sum4,sum5,sum6, max: integer;
begin
for i:=1 to 6 do
for j:=1 to 5 do
begin
a[i,j]:=random(20)
end;
writeln ('полученный массив');
writeln(a[1,1],' ',a[1,2],' ',a[1,3],' ',a[1,4],' ',a[1,5]);
writeln(a[2,1],' ',a[2,2],' ',a[2,3],' ',a[2,4],' ',a[2,5]);
writeln(a[3,1],' ',a[3,2],' ',a[3,3],' ',a[3,4],' ',a[3,5]);
writeln(a[4,1],' ',a[4,2],' ',a[4,3],' ',a[4,4],' ',a[4,5]);
writeln(a[5,1],' ',a[5,2],' ',a[5,3],' ',a[5,4],' ',a[5,5]);
writeln(a[6,1],' ',a[6,2],' ',a[6,3],' ',a[6,4],' ',a[6,5]);
begin
sum1:=(a[1,1]+a[1,2]+a[1,3]+a[1,4]+a[1,5]);
sum2:=(a[2,1]+a[2,2]+a[2,3]+a[2,4]+a[2,5]);
sum3:=(a[3,1]+a[3,2]+a[3,3]+a[3,4]+a[3,5]);
sum4:=(a[4,1]+a[4,2]+a[4,3]+a[4,4]+a[4,5]);
sum5:=(a[5,1]+a[5,2]+a[5,3]+a[5,4]+a[5,5]);
sum6:=(a[6,1]+a[6,2]+a[6,3]+a[6,4]+a[6,5]); 
if (sum1>sum2) and (sum1>sum3) and (sum1>sum4) and (sum1>sum5) and (sum1>sum6) then writeln('max=',sum1) else 
if (sum2>sum1) and (sum2>sum3) and (sum2>sum4) and (sum2>sum5) and (sum2>sum6) then writeln('max=',sum2) else 
if (sum3>sum1) and (sum3>sum2) and (sum3>sum4) and (sum3>sum5) and (sum3>sum6) then writeln('max=',sum3) else 
if (sum4>sum1) and (sum4>sum2) and (sum4>sum3) and (sum4>sum5) and (sum4>sum6) then writeln('max=',sum4) else 
if (sum5>sum1) and (sum5>sum2) and (sum5>sum3) and (sum5>sum4) and (sum5>sum6) then writeln('max=',sum5) else 
if (sum6>sum1) and (sum6>sum2) and (sum6>sum3) and (sum6>sum4) and (sum6>sum5) then writeln('max=',sum6) else 
end;
end.
1 ответ

Alexander 1997

program z15;
var a: array[1..6, 1..5] of integer;
var sum: array [1..6] of integer;
var  i, j, max: integer;
begin
 for i:=1 to 6 do
     for j:=1 to 5 do a[i,j]:=random(20);
 
 writeln ('полученный массив');
 
 for i:=1 to 6 do 
  begin
     for j:=1 to 5 do write(a[i,j],' ');
     writeln('');
  end;   
 
  for i:=1 to 6 do 
      begin
        sum[i]:=0;
        for j:=1 to 5 do  sum[i]:=sum[i]+a[i,j];
      end;
 
  max:=sum[1];
  
  for i:=2 to 6 do
      if sum[i]>max then max:=sum[i];   
 
  writeln('Макс. сумма=',max);
 
end.