python输入两个矩阵,用循环结构写矩阵点乘的代码
时间: 2023-05-27 19:03:07 浏览: 58
```python
# 输入两个矩阵
A = []
for i in range(3):
A.append(list(map(int, input().split())))
B = []
for i in range(3):
B.append(list(map(int, input().split())))
# 初始化结果矩阵
C = [[0]*3 for i in range(3)]
# 矩阵点乘
for i in range(3):
for j in range(3):
for k in range(3):
C[i][j] += A[i][k]*B[k][j]
# 输出结果矩阵
for i in range(3):
print(' '.join(map(str, C[i])))
```
其中,输入格式为每行输入一个矩阵,每行用空格隔开各个数值,例如:
```
1 2 3
4 5 6
7 8 9
```
输出结果矩阵需要将每行数字用空格隔开,例如:
```
30 36 42
66 81 96
102 126 150
```
相关问题
python写代码 请输入两个矩阵,用循环结构写矩阵点乘。例如有两个矩阵A和B,它们的维度分别为(m,n)和(n,p),矩阵点乘的结果C的维度为(m,p)
m = int(input("请输入矩阵A的行数:"))
n = int(input("请输入矩阵A和矩阵B的列数:"))
p = int(input("请输入矩阵B的行数:"))
# 初始化矩阵A
matrix_a = []
for i in range(m):
row = []
for j in range(n):
num = float(input("请输入矩阵A第{}行第{}列的数:".format(i+1,j+1)))
row.append(num)
matrix_a.append(row)
# 初始化矩阵B
matrix_b = []
for i in range(n):
row = []
for j in range(p):
num = float(input("请输入矩阵B第{}行第{}列的数:".format(i+1,j+1)))
row.append(num)
matrix_b.append(row)
# 矩阵点乘
matrix_c = []
for i in range(m):
row = []
for j in range(p):
num = 0
for k in range(n):
num += matrix_a[i][k] * matrix_b[k][j]
row.append(num)
matrix_c.append(row)
# 输出结果
print("矩阵A:")
for row in matrix_a:
print(row)
print("矩阵B:")
for row in matrix_b:
print(row)
print("矩阵点乘结果:")
for row in matrix_c:
print(row)
python请输入两个矩阵,用循环结构写矩阵点乘。例如有两个矩阵A和B,它们的维度分别为(m,n)和(n,p),矩阵点乘的结果C的维度为(m,p
)。
示例输入:
请输入矩阵A的维度(用空格隔开):2 3
请输入矩阵B的维度(用空格隔开):3 4
请依次输入矩阵A的各个元素,每行用空格隔开:
1 2 3
4 5 6
请依次输入矩阵B的各个元素,每行用空格隔开:
7 8 9 10
11 12 13 14
15 16 17 18
示例输出:
经过矩阵点乘后,两个矩阵的结果为:
[74, 80, 86, 92]
[173, 188, 203, 218]