Сформировать одномерный массив из максимальных элементов столбцов матрицы

zenid

Дан двумерный массив размерностью 4 × 5, заполненный случайным образом. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца.
4 ответа

zenid

помогите пожалуйста с кодом этой программы в паскале?


zenid

  const
    nmax=100;
  var
    a: array[1..nmax,1..nmax] of integer;
    b: array[1..nmax] of integer;
    i,j,n,m,max: integer;
begin
  randomize;
  writeln('dvumernii massiv:');
  n:=4; m:=5;
  for i:=1 to n do
  begin
    for j:=1 to m do
    begin
      a[i,j]:=random(99)+1;
        write(a[i,j]:4);
    end;
    writeln;
  end;
  writeln;
 
  for j:=1 to m do
  begin
    max:=a[1,j];
    for i:=1 to n do
    begin
      if a[i,j]>max then max:=a[i,j];
    end;
    b[j]:=max;
  end;
 
  writeln('odnomernii massiv:');
  for j:=1 to m do write(b[j]:4);
  readln;
end.
подправил с учетом модуля и отрицательных элементов
  const
    nmax=100;
  var
    a: array[1..nmax,1..nmax] of integer;
    b: array[1..nmax] of integer;
    i,j,n,m,max: integer;
begin
  randomize;
  writeln('dvumernii massiv:');
  n:=4; m:=5;
  for i:=1 to n do
  begin
    for j:=1 to m do
    begin
      a[i,j]:=random(99)-49;
        write(a[i,j]:4);
    end;
    writeln;
  end;
  writeln;
 
  for j:=1 to m do
  begin
    max:=abs(a[1,j]);
    for i:=1 to n do
    begin
      if abs(a[i,j])>max then max:=abs(a[i,j]);
    end;
    b[j]:=max;
  end;
 
  writeln('odnomernii massiv:');
  for j:=1 to m do write(b[j]:4);
  readln;
end.


zenid

спасибо большое