#include<iostream.h>
#include<conio.h>
class Matrix
{
private:
int a[3][3];
public:
void getMatrix();
void printMatrix();
friend Matrix Multiply(Matrix A,Matrix B);
};
void Matrix::getMatrix()
{
cout<<"Enter the Matrix one by one\n";
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cin>>a[i][j];
}
}
}
void Matrix::printMatrix()
{
cout<<"Given Matrix is\n";
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cout<<a[i][j]<<"";
}
cout<<"\n";
}
}
Matrix Multiply(Matrix A, Matrix B)
{
Matrix T;
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
T.a[i][j]=0;
for(int k=0;k<3;k++)
{
T.a[i][j]=T.a[i][j]+A.a[i][k]*B.a[k][j];
}//end of k loop
}//end of j loop
}//end of i loop
return T;
}
void main()
{
Matrix P,Q,R;
P.getMatrix();
Q.getMatrix();
R=Multiply(P,Q);
R.printMatrix();
getch();
}
Output:
Enter the Matrix one by one
111
111
111
Enter the Matrix one by one
222
222
222
Given Matrix is
666
666
666
#include<conio.h>
class Matrix
{
private:
int a[3][3];
public:
void getMatrix();
void printMatrix();
friend Matrix Multiply(Matrix A,Matrix B);
};
void Matrix::getMatrix()
{
cout<<"Enter the Matrix one by one\n";
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cin>>a[i][j];
}
}
}
void Matrix::printMatrix()
{
cout<<"Given Matrix is\n";
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cout<<a[i][j]<<"";
}
cout<<"\n";
}
}
Matrix Multiply(Matrix A, Matrix B)
{
Matrix T;
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
T.a[i][j]=0;
for(int k=0;k<3;k++)
{
T.a[i][j]=T.a[i][j]+A.a[i][k]*B.a[k][j];
}//end of k loop
}//end of j loop
}//end of i loop
return T;
}
void main()
{
Matrix P,Q,R;
P.getMatrix();
Q.getMatrix();
R=Multiply(P,Q);
R.printMatrix();
getch();
}
Output:
Enter the Matrix one by one
111
111
111
Enter the Matrix one by one
222
222
222
Given Matrix is
666
666
666
mam/sir, there is an error occur matrix to int conversion
ReplyDelete