Информатика, вопрос задал s11pkno1 , 2 года назад

Дана целочисленная прямоугольная таблица размером m*n. Заменить все строки таблицы на строку с максимальным произведением элементов. Паскаль.

Ответы на вопрос

Ответил Аноним
1
const
  m=10;
  n=6;
var
  a:array[1..m,1..n] of integer;
  i,j,maxr:integer;
  p,maxp:longint;
begin
  Randomize;
  Writeln('Исходный массив');
  maxp:=0;
  for i:=1 to m do
  begin
    p:=1;
    for j:=1 to n do
    begin
      a[i,j]:=Random(99)+1; { интервал [1..99] }
      Write(a[i,j]:3);
      p:=p*a[i,j]
    end;
    if maxp<p then begin maxp:=p; maxr:=i end;
    Writeln
  end;
  for i:=1 to m do
    for j:=1 to n do a[i,j]:=a[maxr,j];
  Writeln('Сформированный массив');
  for i:=1 to m do
  begin
    for j:=1 to n do Write(a[i,j]:3);
    Writeln
  end
end.

Тестовое решение:
Исходный массив
 86 61 76  1 86 64
 93 87 34 66 35 13
 51 39 57  5 71 49
 86 47 26 30 93 80
 58 24 59 57  3 79
 46 81 17 24 11 37
 12 83 56 75 89 16
 50 93 57  1 51 64
 25 35 69 29 46 73
 68 56 68 95 42 62
Сформированный массив
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80
 86 47 26 30 93 80

Новые вопросы