Решение модуля 4.7 Поколение Python: для продвинутых

Представляю вам ответы и решения урока 4.7(Операции над матрицами в математике) на курс «Поколение Python: курс для продвинутых»

Найти сумму матриц

Решение модуля 4.7 Поколение Python: для продвинутых

2  3  4
6  7  8
10 11 12

Найти произведение матрицы

Решение модуля 4.7 Поколение Python: для продвинутых

3  6  9
12 15 18
21 24 27

Одну матрицу можно умножать на другую только тогда, когда

количество столбцов в первой матрице совпадает с количеством строк во второй матрице

Результат умножения матрицы размера Am×n​ на матрицу размером Bn×k​ – матрица C с размером


Cm×k

Найти произведение матриц

Решение модуля 4.7 Поколение Python: для продвинутых

Примечание. Мы умножаем строку первой матрицы на столбец второй матрицы. Чтобы найти элемент c_{ij}cij​ результирующей матрицы C = A \times BC=A×B мы умножаем каждый элемент ii-ой строки матрицы AA на соответствующий ему элемент jj-ого столбца матрицы BB и суммируем произведения.
12 15 18
24 30 36
36 45 54

Найти произведение матриц

Решение модуля 4.7 Поколение Python: для продвинутых

Примечание. Мы умножаем строку первой матрицы на столбец второй матрицы. Чтобы найти элемент c_{ij}cij​ результирующей матрицы C = A \times BC=A×B мы умножаем каждый элемент ii-ой строки матрицы AA на соответствующий ему элемент jj-ого столбца матрицы BB и суммируем произведения.
-2 -2
 1  2

Для матрицы

Решение модуля 4.7 Поколение Python: для продвинутых

  1 0
100 1

Напишите программу для вычисления суммы двух матриц.

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

n, m = [int(i) for i in input().split()]
matrix1 = [[int(i) for i in input().split()] for _ in range(n)]
a = input()
matrix2 = [[int(i) for i in input().split()] for _ in range(n)]
matrix3 = [[0] * m for _ in range(n)]

for i in range(n):
    for j in range(m):
        matrix3[i][j] += matrix1[i][j] + matrix2[i][j]

for row in matrix3:
    print(*row)

Напишите программу, которая перемножает две матрицы.

Формат входных данных
На вход программе подаются два натуральных числа nn и mm — количество строк и столбцов в первой матрице, затем элементы первой матрицы, затем пустая строка. Далее следуют числа mm и kk — количество строк и столбцов второй матрицы затем элементы второй матрицы.

n, m = [int(i) for i in input().split()]
a = [[int(j) for j in input().split()] for _ in range(n)]
input()
m, k = [int(i) for i in input().split()]
b = [[int(j) for j in input().split()] for _ in range(m)]

c = [[0] * k for i in range(n)]

for i in range(n):
    for j in range(k):
        el = 0
        for r in range(m):
            el += a[i][r] * b[r][j]
        c[i][j] = el

for row in c:
    print(*row)

Напишите программу, которая возводит квадратную матрицу в m-ую степень.

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

n = int(input())
a = [list(map(int, list(input().split()))) for _ in range(n)]
m = int(input())

def multi(a, b):
    n = len(a)
    b = list(zip(*b))
    return [[sum([a[i][r] * b[j][r] for r in range(n)]) for j in range(n)] for i in range(n)]

def expo(a, m):
    c = list(a)
    for _ in range(m-1):
        c = multi(c, a)
    return c

result = expo(a, m)

[print(*row) for row in result]

Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

7 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
р
р
1 год назад

Блин, ну реально не смешно…

артон
артон
1 год назад

а если насильно заставляют проходить?

Константин
Константин
1 год назад

а разборы экзаменов будут?

PH
PH
Ответить на  admin
1 год назад

почему :cry:

р
р
Ответить на  admin
1 год назад

А если занимаешься не по своей воле?

7
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x