В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
guyfdfff55
guyfdfff55
25.05.2022 03:38 •  Информатика

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

Входные данные

В первой строке дано число n≤10. Далее идут n строк по n неотрицательных целых чисел не больше 100.

Выходные данные

ответ на задачу.

Показать ответ
Ответ:
danek20063
danek20063
15.10.2020 08:19

--- Python 3.7 ---

def MatrixRead(Rows, RowLength, ContType):

   for row in range(Rows):

       print('Enter line ' + str(row))

       buff = []

       [buff.append(ContType(input())) for _ in range(RowLength)]

       yield buff

       

def MatrixSwap(Matrix, OldPos:tuple, NewPos: tuple):

   Matrix[OldPos[0]][OldPos[1]], Matrix[OldPos[1]][OldPos[0]] = Matrix[NewPos[1]][NewPos[0]], Matrix[NewPos[0]][NewPos[1]]

   return Matrix

   

def MatrixPrint(Matrix, end = '\n'):

   for Row in Matrix:

       print(*Row, end ='\n')

   print(end)

   

   

def main():

   N = int(input()) #Matrix Size

   Matr =list( MatrixRead(N, N, int))

   MatrixPrint(Matr) #For check

   for row in range(N):

       for col in range(N):

           SecDiagPos = (row, N-col-1)

           MainDiagPos = (row, col)

           Matr = MatrixSwap(Matr, MainDiagPos, SecDiagPos)

   MatrixPrint(Matr)

   

if __name__ == '__main__':

   main()

Объяснение:

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота