Определить столбец матрицы с максимальным значением суммы положительных элементов - Turbo Pascal (29051)
Формулировка задачи:
В прямоугольной матрице размером М*К, , имеющей имя ММ содержаться целые числа. М- число строк, К- число столбцов. Ввести элементы матрицы с клавиатуры. Определить и вывести на экран сумму положительных элементов в каждом столбце. Определить столбец с максимальным значением этой суммы и вывести его номер на экран.
Как сделать? Сижу туплю капец!
Решение задачи: «Определить столбец матрицы с максимальным значением суммы положительных элементов»
textual
Листинг программы
Uses
CRT;
var
B:array [1..10,1..10] of integer;
k,m,n,i,j,sum,kol:integer;
sr,min,imin:real;
begin
write('Ââåäèòå Г°Г*çìåð Г¬Г*òðèöû ÊõÌ: ');
readln(k,m);
randomize;
writeln('Г¬Г*òðèöa: ');
for i:=1 to k do
begin
for j:=1 to m do
begin
b[i,j]:=random(10)-3;
write(b[i,j]:3);
end;
writeln;
end;
writeln;
min:=MaxInt;
imin:=1;
for j:=1 to m do
begin
sum:=0;
kol:=0;
for i:=1 to k do
if b[i,j]>0 then
begin
sum:=sum+b[i,j];
inc(kol);
end;
{writeln('ÑóììГ* ýëåìåГ*òîâ ',j,'-ГЈГ® ñòîëáöГ*:=',sum);}
sr:=sum/kol;
writeln('ÑðåäГ*ГҐГҐ Г*ðèôìåòè÷åñêîå ýëåìåГ*òîâ ',j,'-ГЈГ® ñòîëáöГ*:=',sr);
if sr<min then
begin
min:=sr;
imin:=j;
end;
end;
writeln('Còîëáåö ',imin,'-é');
readkey
end.
Объяснение кода листинга программы
- В первой строке кода используется библиотека CRT, которая предоставляет функции для работы с консолью.
- Переменная B представляет собой матрицу размером 10x10, заполненную целыми числами.
- Задаются две переменные k и m, которые представляют собой количество строк и столбцов матрицы соответственно.
- Используется функция randomize для инициализации генератора случайных чисел.
- Выводится строка
Г¬Г*òðèöa:и считывается значение переменной k. - Запускается цикл for, который проходит по каждой строке матрицы.
- Внутри цикла вычисляется сумма положительных элементов текущей строки и увеличивается счетчик kol.
- Проверяется условие, что хотя бы один элемент матрицы положительный. Если это условие выполняется, то вычисляется среднее значение элементов строки и обновляется значение min и imin.
- Выводится строка
ÑðåäГ*ГҐГҐ Г*ðèôìåòè÷åñêîå ýëåìåГ*ГІГ®Г�,j,'-Г©' и считывается значение переменной m. - Вычисляется среднее значение элементов строки и обновляется значение min и imin.
- Конец цикла for.
- Выводится строка
Còîëáåö,imin,'-Г©`. - Используется функция readkey для чтения ввода пользователя.
- Конец программы.