python矩阵相乘

def matrix_multiply(matrix1, matrix2):
    # 获取矩阵1的行数和列数
    rows1 = len(matrix1)
    cols1 = len(matrix1[0])

    # 获取矩阵2的行数和列数
    rows2 = len(matrix2)
    cols2 = len(matrix2[0])

    # 检查矩阵是否可以相乘
    if cols1 != rows2:
        print("Error: {} != {}".format(cols1, rows2))
        return None

    # 创建一个结果矩阵,初始化为零
    result = [[0 for _ in range(cols2)] for _ in range(rows1)]

    # 进行矩阵相乘
    # 前两个循环是循环结果矩阵的行和列,第三个循环是第一个矩阵的列(第二个矩阵的行)
    for i in range(rows1):
        for j in range(cols2):
            for k in range(cols1):
                result[i][j] += matrix1[i][k] * matrix2[k][j]

    return result

# 读取矩阵 A 和 B 的行数和列数
R1, C1 = map(int, input().split())  # 矩阵 A 的行数和列数
A = []  # 存储矩阵 A
for _ in range(R1):
    row = list(map(int, input().split()))
    A.append(row)

R2, C2 = map(int, input().split())  # 矩阵 B 的行数和列数
B = []  # 存储矩阵 B
for _ in range(R2):
    row = list(map(int, input().split()))
    B.append(row)

# 执行矩阵相乘
result_matrix = matrix_multiply(A, B)

# 输出结果矩阵
if result_matrix:
    for row in result_matrix:
        print(' '.join(map(str, row)))

输入方式

输入先后给出两个矩阵A和B。对于每个矩阵,首先在一行中给出其行数R和列数C,随后R行,每行给出C个整数,以1个空格分隔,且行首尾没有多余的空格。输入保证两个矩阵的R和C都是正数,并且所有整数的绝对值不超过100。

2 3
1 2 3
4 5 6
3 4
7 8 9 0
-1 -2 -3 -4
5 6 7 8

输出结果

 20 22 24 16
53 58 63 28

相关推荐

  1. python矩阵相乘

    2024-04-11 13:56:02       36 阅读
  2. 矩阵相乘torch.einsum()

    2024-04-11 13:56:02       35 阅读
  3. 题目 1908: 蓝桥杯-矩阵相乘

    2024-04-11 13:56:02       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-11 13:56:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-11 13:56:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-11 13:56:02       87 阅读
  4. Python语言-面向对象

    2024-04-11 13:56:02       96 阅读

热门阅读

  1. TCP重传机制详解——05RACK

    2024-04-11 13:56:02       32 阅读
  2. 【SQL】mysql数学函数功能介绍并举例

    2024-04-11 13:56:02       35 阅读
  3. python之迭代

    2024-04-11 13:56:02       34 阅读
  4. 七彩之城的独特序列(蓝桥杯)

    2024-04-11 13:56:02       42 阅读
  5. SpringCloudAlibaba-整合gateway(五)

    2024-04-11 13:56:02       38 阅读
  6. opencv使用滑动窗口提取GLCM特征做svm图像分类

    2024-04-11 13:56:02       32 阅读
  7. uniapp实现文件和图片选择上传功能实现

    2024-04-11 13:56:02       35 阅读