В матрице найти сумму элементов столбца, в котором расположен наибольший элемент - Turbo Pascal
Формулировка задачи:
Заданная квадратная матрица A размером N x N (N <= 10), состоящая из действительных элементов . Найти сумму элементов столбца , в котором расположен
наибольший элемент
Решение задачи: «В матрице найти сумму элементов столбца, в котором расположен наибольший элемент»
textual
Листинг программы
program pr;
var
a: array [1..10, 1..10] of real;
n,i,j,index: integer;
max, sum: real;
begin
writeln('Введите порядок матрицы <= 10');
readln(n);
if (n <= 10) then
begin
for i := 1 to n do
for j := 1 to n do
a[i, j] := random(21); // диапазон заполнения ставь любой
writeln('Исходная матрица');
for i := 1 to n do
begin
for j := 1 to n do
write(a[i, j]:3);
writeln;
end;
max := a[1, 1];
for i := 1 to n do
for j := 1 to n do
if a[i, j] > max then
begin
max := a[i, j];
index := j;
end;
writeln;
writeln('Наибольший элемент: ', max);
writeln('Столбец,содержащий наибольший элемент: ', index);
sum := 0;
for i := 1 to n do
begin
sum := sum + a[i, index];
end;
writeln('Сумма элементов столбца,который содержит наибольший элемент: ', sum);
end
else
writeln('Недопустимый ввод.Порядок должен быть меньше или равен 10');
end.
Объяснение кода листинга программы
- Программа начинается с объявления переменных: n, i, j, index и max, которые будут использоваться для работы с матрицей и поиском наибольшего элемента.
- Пользователю предлагается ввести порядок матрицы (не больше 10). Если введенный порядок соответствует допустимому диапазону (т.е. меньше или равен 10), то начинается заполнение матрицы случайными числами от 0 до 20.
- После заполнения матрицы выводится исходная матрица с помощью цикла for.
- Находится наибольший элемент в матрице с помощью двух вложенных циклов for. Переменная max и индекс столбца, содержащего наибольший элемент, обновляются при нахождении нового максимального значения.
- Выводится информация о наибольшем элементе и столбце, содержащем этот элемент.
- Сумма элементов столбца, содержащего наибольший элемент, вычисляется с помощью цикла for.
- Если введенный порядок матрицы не соответствует допустимому диапазону, выводится сообщение об ошибке.