您的位置:首页 > 娱乐 > 明星 > C++ 矩阵乘法

C++ 矩阵乘法

2024/10/6 20:29:19 来源:https://blog.csdn.net/zg260/article/details/139727037  浏览:    关键词:C++ 矩阵乘法

描述

如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C。这个矩阵的每个元素是由下面的公式决定的

矩阵的大小不超过100*100

输入描述:

第一行包含一个正整数x,代表第一个矩阵的行数
第二行包含一个正整数y,代表第一个矩阵的列数和第二个矩阵的行数
第三行包含一个正整数z,代表第二个矩阵的列数
之后x行,每行y个整数,代表第一个矩阵的值
之后y行,每行z个整数,代表第二个矩阵的值
 

输出描述:

对于每组输入数据,输出x行,每行z个整数,代表两个矩阵相乘的结果

示例1

输入:

2
3
2
1 2 3
3 2 1
1 2
2 1
3 3

输出:

14 13
10 11

说明:

1 2 3
3 2 1 
乘以
1 2
2 1
3 3
等于
14 13
10 11    
#include <iostream>
using namespace std;constexpr int N = 100;int main() {int x, y, z;int A[N][N] = {0};int B[N][N] = {0};int C[N][N] = {0};cin >> x >> y >> z;for (int i = 0; i < x; i++) {for (int j = 0; j < y; j++) {cin >> A[i][j];}}for (int j = 0; j < y; j++) {for (int k = 0; k < z; k++) {cin >> B[j][k];}}for (int i = 0; i < x; i++) {for (int k = 0; k < z; k++) {C[i][k] = 0;for (int j = 0; j < y; j++) {C[i][k] += A[i][j] * B[j][k];}}}for(int i = 0; i < x; i++){for(int k = 0; k < z; k++){std::cout << C[i][k] << " ";}std::cout << "\n";}}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com