Заполните матрицу случайными числами. Найдите в ней строку и столбец с максимальными суммами элементов. Выведите на экран индексы строки и столбца, а также суммы.
from random import random
# Матрица - двумерный список,
# т. е. список, содержащий
# вложенные списки одинаковой длины.
matrix = []
# За одну итерацию внешнего цикла
# формируется один вложенный список,
# т. е. одна строка матрицы.
for i in range(5):
# строка матрицы
row = []
# заполнение строки
for j in range(5):
# добавляется случайное число
# от 0 до 9 включительно
row.append(int(random()*10))
# строка добавляется в матрицу
matrix.append(row)
# построчный вывод матрицы
for row in matrix:
print(row)
# Переменная для хранения
# максимальной суммы строки.
max_row = 0
# Переменная для хранения
# индекса строки с максимальной суммой.
id_row = 0
# индекс текущей строки
i = 0
# для каждой строки в матрице ...
for row in matrix:
# Функция sum() возвращает
# сумму элементов переданного ей списка.
# Если сумма элементов строки
# больше значения max_row,
if sum(row) > max_row:
# то присвоить переменной max_row эту сумму,
max_row = sum(row)
# а в id_row сохранить индекс этой строки.
id_row = i
# увеличить индекс на 1
i += 1
# вывод индекса и суммы
print(id_row, '-', max_row)
# Переменная для хранения
# максимальной суммы столбца.
max_col = 0
# Переменная для хранения
# индекса столбца с максимальной суммой.
id_col = 0
# перебор индексов столбцов
for i in range(5):
# сумма текущего столбца
col_sum = 0
# перебор индексов строк
for j in range(5):
# Извлекается очередной элемент столбца,
# и добавляется к col_sum,
# при этом изменяется индекс строк (j),
# индекс столбца неизменен (i).
col_sum += matrix[j][i]
# Если сумма элементов текущего столбца
# больше значения max_col,
if col_sum > max_col:
# то записать значение
# первой переменной в вторую,
max_col = col_sum
# а индекс столбца сохранить в id_col.
id_col = i
# вывод индекса столбца и его суммы
print(id_col, '-', max_col)