Предмет: Информатика,
автор: den130
Помогите,пожалуйста!!! Нужно написать программу на паскале, которая выводит на экран столбец матрицы , сумма значений элементов которого наименьшая.
mnv1962:
Язык какой?
Ответы
Автор ответа:
6
const
n=10;m=7;
var
a:array[1..n,1..m]of integer;
i,j,min,s,j_m:integer;
begin
for i:=1 to n do
begin
writeln;
for j:=1 to m do
begin
a[i,j]:=random(20)-5;
write(a[i,j]:4);
end;
end;
writeln;
{запишем в min чуть больше наибольшего значения суммы, которая может быть в любом столбце. Больше, чем 200 не будет, т.к. всего 10 строк, каждое значение исходя из заполнения матрицы не может быть больше, чем 15 }
min:=200;j_m:=1;
for j:=1 to m do
begin
s:=0;
for i:=1 to n do
s:=s+a[i,j];
if s<min then
begin
j_m:=j;
min:=s;
end;
writeln('j :',j,' ',s); {выводится значение суммы в каждом столбце, необязательно, можно удалить}
end;
writeln('№ столбца с мин суммой ',j_m);
for i:=1 to n do
writeln(a[i,j_m]); {вывод нужного столбца}
end.
n=10;m=7;
var
a:array[1..n,1..m]of integer;
i,j,min,s,j_m:integer;
begin
for i:=1 to n do
begin
writeln;
for j:=1 to m do
begin
a[i,j]:=random(20)-5;
write(a[i,j]:4);
end;
end;
writeln;
{запишем в min чуть больше наибольшего значения суммы, которая может быть в любом столбце. Больше, чем 200 не будет, т.к. всего 10 строк, каждое значение исходя из заполнения матрицы не может быть больше, чем 15 }
min:=200;j_m:=1;
for j:=1 to m do
begin
s:=0;
for i:=1 to n do
s:=s+a[i,j];
if s<min then
begin
j_m:=j;
min:=s;
end;
writeln('j :',j,' ',s); {выводится значение суммы в каждом столбце, необязательно, можно удалить}
end;
writeln('№ столбца с мин суммой ',j_m);
for i:=1 to n do
writeln(a[i,j_m]); {вывод нужного столбца}
end.
Похожие вопросы
Предмет: Другие предметы,
автор: akocyaakocya
Предмет: Русский язык,
автор: OXOTHИK
Предмет: Английский язык,
автор: arsenii9
Предмет: Литература,
автор: protron2007
Предмет: Биология,
автор: cccccc5678