c++使用vector求两个矩阵相乘
#include <vector>
#include <iostream>
using namespace std;
vector<vector<double>> mutil(vector<vector<double>> m1, vector<vector<double>> m2) {
int m = m1.size();
int n = m1[0].size();
int p = m2[0].size();
vector<vector<double>> array;
vector<double> temparay;
for (int i = 0; i < m; i++) {
for (int j = 0; j < p; j++) {
double sum = 0;
for (int k = 0; k < n; k++) {
sum += m1[i][k] * m2[k][j];
}
temparay.push_back(sum);
}
array.push_back(temparay);
temparay.erase(temparay.begin(), temparay.end());
}
return array;
}
int main() {
vector<vector<double>> nums1 = {
{1, 2, 3},
{4, 15, 6},
{7, 8, 8}
};
vector<vector<double>> w = mutil(nums1, nums1);
for (int i = 0; i < w.size(); i++)
{
for (int j = 0; j < w[0].size(); j++)
{
cout << w[i][j] << " ";
}
cout << endl;
}
}