Генерируется квадратная матрица. Находится сумма элементов ее главной и побочной диагоналей.
Примечание. Главная диагональ идет из верхнего левого угла в правый нижний, побочная — из верхнего правого угла в левый нижний.
from random import random
N = 5
matrix = []
for i in range(N):
row = []
for j in range(N):
row.append(int(random()*10))
matrix.append(row)
for row in matrix:
print(row)
sumMain = 0
sumSecondary = 0
for i in range(N):
sumMain += matrix[i][i]
sumSecondary += matrix[i][N-i-1]
print(sumMain)
print(sumSecondary)
С комментариями:
# заполнение матрицы
from random import random
N = 5
matrix = []
for i in range(N):
row = []
for j in range(N):
row.append(int(random()*10))
matrix.append(row)
# вывод матрицы на экран
for row in matrix:
print(row)
# сумма элементов главной диагонали
sumMain = 0
# сумма элементов побочной диагонали
sumSecondary = 0
# Количество итераций цикла соответствует
# размерности квадратной матрицы
for i in range(N):
# У элементов главной диагонали совпадают оба индекса.
# Из матрицы извлекается элемент и добавляется к сумме.
sumMain += matrix[i][i]
# У элементов побочной диагонали второй индекс отсчитывается с конца
sumSecondary += matrix[i][N-i-1]
# вывод сумм
print(sumMain)
print(sumSecondary)
Пример выполнения:
[8, 7, 9, 4, 2]
[3, 4, 1, 4, 2]
[3, 4, 4, 2, 1]
[1, 6, 9, 8, 3]
[1, 9, 4, 7, 9]
33
17