c++ - 大小为 4*2 和 2*4 的两个矩阵的矩阵乘法
问题描述
我正在尝试编写大小为 4*2 和 2*4 的两个矩阵的矩阵乘法代码。假设矩阵是 A 和 B。我对乘法部分的试验如下:
int multi_res[4][4];
for(int i =0 ; i<4;i++)
{
for(int j = 0 ; j<4;j++){
multi_res[i][j]=0;
for(int k =0 ;k<4;k++){
multi_res[i][j]+=A[i][k]*B[j][k];
}
}
}
但是,此代码不适用于我的问题 [给出错误结果]。
解决方案
你的内循环是错误的。它应该是
for(int k =0 ;k<2;k++){
multi_res[i][j]+=A[i][k]*B[k][j];
}
假设该行是数组中的第一个索引。
推荐阅读
- flutter - 颤振:EngineIOException:websocket错误
- reactjs - 将箭头函数传递给使用钩子的组件会导致 useEffect 再次触发
- corda - 使用带有 Corda DriverDSL 的测试时钟
- c# - 在 Queryable where 子句中需要星期几作为字符串 (Sunday, Monday ...)
- intellij-idea - 如何强制 IntelliJ 继续显示已删除的文件?
- python - 用另一个文件检查元组值
- reactjs - 由于 React/MaterialUI 中的按钮行导致严重减速
- google-api - Google Play 游戏服务发布 API 没有响应
- python - Keras:fit_generator NotImplementedError
- java - 在 javafx 中获得比需要更多的行数。如何解决这个问题?