var a:array[1..40,1..40] of integer; n,m,i,j:byte; max,sum:longint;
function f_sum_stolb(st,n:byte; a:array[1..40,1..40] of integer):longint;
var i:byte;sum:longint;
begin
sum:=0;
for i:=1 to n do
sum:=sum+a[i,st];
f_sum_stolb:=sum;
end;
begin
writeln('Введите размерность матрицы n*m');
readln(n,m);
for i:=1 to n do
for j:=1 to m do
begin
writeln('Введите элемент ',i,' строки ',j,' столбца');
readln(a[i,j]);
end;
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j]:3);
writeln;
end;
for i:=1 to m do
begin
sum:=f_sum_stolb(i,n,a);
if i=1 then max:=sum
else if sum>max then max:=sum;
writeln('Сумма элементов ',i,' столбца- ',sum);
end;
writeln('Максимальная сумма- ',max);
end.
Вариант 2
program zad;
uses crt;
var
mas:array[1..100,1..100] of integer;
s:array[1..100] of integer;
max,i,j,n,m:integer;
begin
clrscr;
randomize;
write('m = ');readln(m);
write('n = ');readln(n);
for i:=1 to m do
begin
for j:=1 to n do
begin
mas[i,j]:=random(101)-50;
write(mas[i,j]:4);
end;
writeln;
end;
for j:=1 to n do
begin
for i:=1 to m do
s[j]:=s[j]+mas[i,j];
end;
writeln;
for j:=1 to n do
write(s[j]:4);
writeln;
s[1]:=max;
for j:=1 to n do
if max<=s[j] then max:=s[j];
writeln('максимальная сумма ',max);
readln;
end.