【矩阵乘法】:矩阵乘法的基本实现

来源:互联网 发布:手机数据恢复精灵破解版 编辑:程序博客网 时间:2024/04/29 15:59

问题

求解关于两个矩阵的乘积

解题思路:

参考线性代数里面的两个矩阵相乘的规则,我这里不再赘述,详情附上了一个链接,我的编程也是用了里面的例子~~
这里写链接内容

具体的过程我会在代码片里面加上注释

代码

///矩阵乘法// author:seen// 2015-09-18#include <iostream>using namespace std;int num1[100][100];int num2[100][100];int num3[100][100];int matrix(int m,int n,int temp){ //temp就是指row1    int sum=0;    for(int i=0;i<temp;i++){        sum+=num1[m][i]*num2[i][n];    }    return sum;}void  mul(int row1,int column1,int row2,int column2){    int i,j;    for(i=0;i<row2;i++){        for(j=0;j<column1;j++){            num3[i][j]=matrix(i,j,column1); //计算该i行,j列的值        }    }    for(i=0;i<row1;i++){   //输出结果矩阵        for(j=0;j<column2![这里写图片描述](http://img.blog.csdn.net/20150918144204202);j++){            cout<<num3[i][j]<<" ";        }        cout<<endl;    }}int main(){    int row1,column1,row2,column2,i,j; //输入两矩阵的行和列    cin>>row1>>column1>>row2>>column2;    for(i=0;i<row1;i++){    //输入矩阵1        for(j=0;j<column1;j++){            cin>>num1[i][j];        }    }    for(i=0;i<row2;i++){   //输入矩阵2        for(j=0;j<column2;j++){            cin>>num2[i][j];        }    }    mul(row1,column1,row2,column2);  //计算矩阵乘积}

截图

这里写图片描述

0 0