Процедуры. Исключить из двумерного массива столбец с наибольшей суммой элементов

Shreder

Задан двумерный числовой массив. Исключить из массива столбец с наибольшей суммой элементов. Исключение столбца осуществляется путем сдвига столбцов массива влево, начиная с нужного столбца.
2 ответа

Shreder

  const
    nmax=100;
  var
    a: array[1..nmax,1..nmax] of integer;
    i,j,k,n,s,max,buf: integer;
begin
  randomize;
  n:=6;
  writeln('ishodnii massiv:');
  for i:=1 to n do
  begin
    for j:=1 to n do
    begin
      a[i,j]:=random(9)+1;
      write(a[i,j]:4);
    end;
    writeln;
  end;
  writeln;
 
  max:=-32768; k:=0;
  for j:=1 to n do
  begin
    s:=0;
    for i:=1 to n do
    begin
      s:=s+a[i,j];
    end;
    if s>max then
    begin
      max:=s;
      k:=j;
    end;
  end;
  writeln(' maximumalnaya summa ',max,' v ',k,' stolbe');
 
 
  for i:=1 to n do
  begin
    for j:=k to n-1 do
    begin
      a[i,j]:=a[i,j+1];
    end;
    a[i,n]:=0;
  end;
 
  writeln;
  writeln('poluchennii massiv:');
 
  for i:=1 to n do
  begin
    for j:=1 to n do   {или for j:=1 to n-1,
                        чтобы не выводить последний столбец}
      write(a[i,j]:4);
    writeln;
  end;
 
  readln;
end.


Shreder

Спасибо