Thursday, 31 January 2013

Multiplying two 3x3 Matrix in Cplusplus

data:image/png;base64,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
Two Matrics are to be multiplied. If A is an nxm matrix and B is an mxp matrix, the result AB of their multiplicaiotn is an nxp matrix defined only if the number of columns m in A is equal to the number of rows m in B.

Basically when we multiply matrices, the number of the rows in the first matrix are multiplied with corresponding columns in the second matrix. One may compute each entry in the third matrix one at a time.

Source Code:

#include<iostream>
using namespace std;
void main()
{
            int q,w,e,s,d,f,x,c,v;
            int a[3][3];
            int b[3][3];
            cout<<" enter values of matrices A "<<endl;
            for(int i=0;i<3;i++)
            {
                        for(int j=0;j<3;j++)
            {
                        cin>>a[i][j];

            }
            }
            cout<<"   matrices A "<<endl;
            for(int i=0;i<3;i++)
            {
                        cout<<"[  ";
                        for(int j=0;j<3;j++)
                        { cout<<a[i][j]<<"    ";
                       
                        }
                        cout<<"]   \n";
            }
cout<<endl;
cout<<"plz enter value of matrices B"<<endl;
            for(int i=0;i<3;i++)
            {
                        for(int j=0;j<3;j++)
            {
                        cin>>b[i][j];

            }
            }

cout<<"  matrices B "<<endl;
            for(int i=0;i<3;i++)
            {
                        cout<<"[  ";
                        for(int j=0;j<3;j++)
                        { cout<<b[i][j]<<"    ";
                       
                        }
                        cout<<"]   \n\n";
            }

           
            cout<<"   resultant"<<endl;
            q=((a[0][0]*b[0][0])+(a[0][1]*b[1][0])+(a[0][2]*b[2][0]));
            w=((a[0][0]*b[0][1])+(a[0][1]*b[1][1])+(a[0][2]*b[2][1]));
            e=((a[0][0]*b[0][2])+(a[0][1]*b[1][2])+(a[0][2]*b[2][2]));
            s=((a[1][0]*b[0][0])+(a[1][1]*b[1][0])+(a[1][2]*b[2][0]));
            d=((a[1][0]*b[0][1])+(a[1][1]*b[1][1])+(a[1][2]*b[2][1]));
            f=((a[1][0]*b[0][2])+(a[1][1]*b[1][2])+(a[1][2]*b[2][2]));
            x=((a[2][0]*b[0][0])+(a[2][1]*b[1][0])+(a[2][2]*b[0][0]));
            c=((a[2][0]*b[0][1])+(a[2][1]*b[1][1])+(a[2][2]*b[2][1]));
            v=((a[2][0]*b[0][2])+(a[2][1]*b[1][2])+(a[2][2]*b[2][2]));

            int r[3][3]={{q,w,e},{s,d,f},{x,c,v}};

            for(int i=0;i<3;i++)
            {
                        cout<<"[  ";
                        for(int j=0;j<3;j++)
                        { cout<<r[i][j]<<"    ";
                       
                        }
                        cout<<"]   \n";
            }
           
}

Output:
3x3 matrix, matrix in c, matrix c,



Subscribe to get the latest right to your inbox:

0 comments:

Post a Comment

Some HTML Code