Обмен диагоналей матрицы

Дана квадратная матрица чисел. Напишите программу, которая меняет местами элементы, стоящие на главной и побочной диагонали, при этом каждый элемент должен остаться в том же столбце (то есть в каждом столбце нужно поменять местами элемент на главной диагонали и на побочной диагонали).

Формат входных данных
На вход программе подаётся натуральное число n — количество строк и столбцов в матрице, затем элементы матрицы построчно через пробел.

Формат выходных данных
Программа должна вывести матрицу с элементами главной и побочной диагонали, поменявшимися своими местами.

n = int(input())
matrix = [list(map(int, input().split())) for _ in range(n)]
for i in range(n):
    if i < n // 2:
        matrix[i][i], matrix[abs(i - n + 1)][i] = matrix[abs(i - n + 1)][i], matrix[i][i]
        matrix[i][abs(i - n + 1)], matrix[abs(i - n + 1)][abs(i - n + 1)] = matrix[abs(i - n + 1)][abs(i - n + 1)], matrix[i][abs(i - n + 1)] 
    print(*matrix[i])




Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: