[PASCAL] Заполнить матрицу из 8 строк и 5 столбцов случайными числами в интервале [-10,10] и вывести ее на экран. Вывести на экран строку, сумма элементов которой максимальна. Формат вывода: Строка 2: 3 5 8 9 8
Код к задаче: «Матрица. Вывести на экран строку, сумма элементов которой максимальна»
Листинг программы
var mas: array [1..8,1..5] of integer; i, j, max, k, s:integer; begin Randomize; writeln(‘** Исходный массив **’); for i:=1 to 8 do begin for j:=1 to 5 do begin mas[i,j]:=random(21)-10; write(mas[i,j]:4); end; writeln; end; for i:=1 to 8 do begin s:= 0; for j:=1 to 5 do s:= s + mas[i, j]; if (i=1) or (s>max) then begin k:= i; max:= s; end; end; write(‘Строка ‘, k, ‘: ‘); for j:=1 to 5 do write(mas[k,j]:4); writeln; end.
Источник: studassistent.ru
Найти строку матрицы с максимальной суммой элементов
В двумерном массиве (матрице) найти строку, сумма элементов которой является максимальной среди всех строк матрицы.
Решение задачи «Сумма матриц»
Решения данной задачи, когда требуется найти только одну строку с максимальной суммой элементов и когда таких строк несколько и все их надо определить, несколько различаются.
Рассмотрим сначала первый случай. Предположим, что в матрице суммы всех строк различны или для решения задачи достаточно найти первую с максимальной суммой.
Пусть переменная sum_max хранит найденную максимальную сумму. Переменная row_max хранит номер строки, элементы которой дают в сумме максимум.
Перебираем построчно матрицу. Перед вложенным циклом переменной sum (хранит сумму элементов текущей строки) присваиваем 0. Во вложенном цикле перебираются элементы текущей строки. Значение каждого из них добавляется к sum .
После того, как сумма элементов текущей строки посчитана (вышли из внутреннего цикла), проверяем не больше ли она значения, хранимого в sum_max . Если больше, то записываем ее в sum_max , а переменной row_max присваиваем номер текущей строки (хранится в переменной i ).
В конце программы выводим значения sum_max и row_max (она содержит ответ задачи — номер искомой строки) на экран. В данном случае будет найдена только первая строка с максимальной суммой. Если бы в условном операторе использовался логический оператор >= (больше или равно), то, при наличии нескольких строк с максимальной суммой, была бы выведена на экран последняя.
const N = 5; M = 3; var a: array[1..N,1..M] of integer; i, j, row_max: byte; sum, sum_max: integer; begin randomize; for i:=1 to N do begin for j:=1 to M do begin a[i,j] := random(10); write(a[i,j]:3); end; writeln; end; sum_max := -1; row_max := 0; for i:=1 to N do begin sum := 0; for j:=1 to M do sum := sum + a[i,j]; if sum > sum_max then begin sum_max := sum; row_max := i; end; end; writeln(‘Строка ‘,row_max,’, сумма ‘,sum_max); end.
Теперь обратимся ко второму случаю, когда надо определить все строки с максимальной суммой элементов, если таковых несколько. В данном случае следует использовать два отдельных перебора матрицы. В первом просто определяется максимум. Во втором на экран выводятся номера строк, сумма элементов которых совпала с ранее найденным максимальным значением.
Двумерные массивы вывод. Заполнение. Двумерный массив циклы. C++ для начинающих. #32
const N = 20; M = 3; var a: array[1..N,1..M] of integer; i, j: byte; sum, sum_max: integer; begin randomize; for i:=1 to N do begin for j:=1 to M do begin a[i,j] := random(10); write(a[i,j]:3); end; writeln; end; sum_max := -1; for i:=1 to N do begin sum := 0; for j:=1 to M do sum := sum + a[i,j]; if sum > sum_max then sum_max := sum; end; write(‘Максимальную сумму ‘,sum_max,’ содержат строки:’); for i:=1 to N do begin sum := 0; for j:=1 to M do sum := sum + a[i,j]; if sum = sum_max then write(i:3); end; writeln; end.
Пример выполнения программы:
7 8 6 6 4 0 1 8 1 9 7 5 4 3 0 8 2 8 4 7 0 0 7 6 1 5 9 7 4 9 0 3 3 8 7 4 5 5 1 1 3 3 8 8 4 4 6 6 8 1 6 5 6 7 8 9 4 2 9 3 Максимальную сумму 21 содержат строки: 1 4 19
Источник: pas1.ru
Вывести на экран строку, сумма элементов которой максимальна. Формат вывода: Строка 2: 3 5 8 9 8 все это в паскале
Найди верный ответ на вопрос ✅ «Вывести на экран строку, сумма элементов которой максимальна. Формат вывода: Строка 2: 3 5 8 9 8 все это в паскале . » по предмету Информатика, а если ответа нет или никто не дал верного ответа, то воспользуйся поиском и попробуй найти ответ среди похожих вопросов.
Новые вопросы по информатике
Сколько всего различных символов может быть в восьмибитной текстовой кодировке? 1) 8 2) 512 3) 256 4) 65536
Паскаль. Написать программу подсчета количества отрицательных чисел среди любых 10 вводимых. 1 программа с использованием while, 2 программа — repeat
Сколько кб информации содержит сообщение объемом 2^20 бит?
Информатика пользователь создад сообщение из 256 символов в кодировке Unicode в которой каждый символ кодируется 16 битами после редактирования информационный объем сообщения составил 3072 бит Определите сколько символов удалили сообщение если его
Запишите числа в беззнаковом коде (формат 1 байт): а) 31; б) 163; в) 65; г) 128.
Главная » Информатика » Вывести на экран строку, сумма элементов которой максимальна. Формат вывода: Строка 2: 3 5 8 9 8 все это в паскале
Источник: urokam.net