This program computes multiplication of two matrices . In this we ask user to enter order or size of matrix A then entered elements for matrix A, same procedure goes for matrix B. But the multiplication does not yield the same process as in case of addition or subtraction of two matrices.
Let us take a general scenario. We have Matrix A of size 3*4 and a Matrix B of size 3* 4 . It seems from the appearance that we can conclude the resultant matrix. But you are wrong here , we can not multiply these two matrices as the no. of columns of Matrix A is 4 and rows of matrix B is 3. It does not match, so it is impossible to perform multiplication.
Also Read: Program for subtraction of two matrices
Take another scenario, we have Matrix A of order 1 X 4 and Matrix B of order 4 X 4 then Multiplication can be performed. Resultant matrix would be of order 1 X 4 ( i.e no. of rows of matrix A * no. of columns of matrix B )
#include<iostream.h>
#include<conio.h>
int main()
{
clrscr();
int a[10][10], b[10][10],c[10][10];
int x,y,i,j,m,n;
cout<<“\nEnter the number of rows and columns for Matrix A:::\n\n”;
cin>>x>>y;
// x denotes number rows in matrix A
// y denotes number columns in matrix A
cout<<“\n\nEnter elements for Matrix A :::\n\n”;
for(i=0;i<x;i++)
{
for(j=0;j<y;j++)
{
cin>>a[i][j];
}
cout<<“\n”;
}
cout<<“\n\nMatrix A :\n\n”;
for(i=0;i<x;i++)
{
for(j=0;j<y;j++)
{
cout<<“\t”<<a[i][j];
}
cout<<“\n\n”;
}
cout<<“\n———————————————————–\n”;
cout<<“\nEnter the number of rows and columns for Matrix B:::\n\n”;
cin>>m>>n;
// m denotes number rows in matrix B
// n denotes number columns in matrix B
cout<<“\n\nEnter elements for Matrix B :::\n\n”;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
cin>>b[i][j];
}
cout<<“\n”;
}
cout<<“\n\nMatrix B :\n\n”;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
cout<<“\t”<<b[i][j];
}
cout<<“\n\n”;
}
if(y==m)
{
for(i=0;i<x;i++)
{
for(j=0;j<n;j++)
{
c[i][j]=0;
for(int k=0;k<m;k++)
{
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
}
}
cout<<“\n———————————————————–\n”;
cout<<“\n\nMultiplication of Matrix A and Matrix B :\n\n”;
for(i=0;i<x;i++)
{
for(j=0;j<n;j++)
{
cout<<“\t”<<c[i][j];
}
cout<<“\n\n”;
}
}
else
{
cout<<“\n\nMultiplication is not possible”;
}
getch();
return 0;
}
Also Read: Program for addition of two matrices
- MongoDB Operators Tutorial – What are Different Operators Available? - October 5, 2019
- MongoDB Projection Tutorial : Return Specific Fields From Query - March 9, 2019
- MongoDB Index Tutorial – Create Index & MongoDB Index Types - July 6, 2018