编写一个 Python 程序,接受自行输入的两个 2x2 矩阵,并进行以下操作: 计算两个矩阵的和 计算两个矩阵的差(第一个矩阵减去第二个矩阵)。 计算第一个矩阵的逆矩阵(若不可逆程序需要输出提示)。 计算两个矩阵的乘积。
时间: 2024-09-10 22:22:16 浏览: 41
Python:合并两个numpy矩阵的实现
首先,让我们编写一个Python程序,用于接收用户输入的两个2x2矩阵并执行相应的运算:
```python
import numpy as np
# 定义函数计算矩阵的加法、减法、乘法和判断逆矩阵
def matrix_operations(matrix1, matrix2):
# 矩阵加法
sum_matrix = np.add(matrix1, matrix2)
# 矩阵减法
difference_matrix = np.subtract(matrix1, matrix2)
# 矩阵乘法
product_matrix = np.dot(matrix1, matrix2)
# 检查矩阵是否可逆
try:
inverse_matrix = np.linalg.inv(matrix1)
print("矩阵1的逆矩阵:")
print(inverse_matrix)
except np.linalg.LinAlgError:
print("矩阵1无法求逆")
return sum_matrix, difference_matrix, product_matrix
# 用户输入2x2矩阵
print("请输入第一个2x2矩阵 (以逗号分隔,每行四个元素):")
matrix1 = list(map(float, input().split(',')))
matrix1 = np.array([[matrix1[i * 4], matrix1[i * 4 + 1]], [matrix1[i * 4 + 2], matrix1[i * 4 + 3]]] for i in range(2))
print("请输入第二个2x2矩阵 (同样格式):")
matrix2 = list(map(float, input().split(',')))
matrix2 = np.array([[matrix2[i * 4], matrix2[i * 4 + 1]], [matrix2[i * 4 + 2], matrix2[i * 4 + 3]]] for i in range(2))
# 执行矩阵运算
result = matrix_operations(matrix1, matrix2)
# 输出结果
print("\n矩阵相加的结果:")
print(result[0])
print("\n矩阵相减的结果:")
print(result[1])
print("\n矩阵相乘的结果:")
print(result[2])
阅读全文