Jumat, 04 Mei 2012

Perkalian Matriks Pada C++

Berikut adalah contoh untuk melakukan perkalian matriks pada C++ : 

#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
            int MatA[3][3],MatB[3][3],X[3][3],a,b,c;
            clrscr();
            cout<<"Program perkalian dua buah matriks\n";
            cout<<"Silahkan input matriks A : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<"Elemen ke "<<(a+1)<<","<<(b+1)<<" : ";
                                    cin>>MatA[a][b];
                        }
            }

            cout<<"\nMatrik A : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<MatA[a][b];
                        }
                        cout<<endl;
            }
            cout<<endl;
            cout<<"Silahkan input matrik B : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<"Elemen ke "<<(a+1)<<","<<(b+1)<<" : ";
                                    cin>>MatB[a][b];
                        }
            }
            cout<<"\nMatrik B : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<MatB[a][b];
                        }
                        cout<<endl;
            }
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    X[a][b]=0;
                                    for (c=0; c<3; c++)
                                    {
                                                X[a][b] += MatA[a][c] * MatB[c][b];
                                    }
                        }
            }
            cout<<"\nHasil perkaliannya adalah : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<X[a][b];
                        }
                        cout<<endl;
            }
            cout<<endl;
            getch();
}#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
            int MatA[3][3],MatB[3][3],X[3][3],a,b,c;
            clrscr();
            cout<<"Program perkalian dua buah matriks\n";
            cout<<"Silahkan input matriks A : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<"Elemen ke "<<(a+1)<<","<<(b+1)<<" : ";
                                    cin>>MatA[a][b];
                        }
            }
            cout<<"\nMatrik A : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<MatA[a][b];
                        }
                        cout<<endl;
            }
            cout<<endl;
            cout<<"Silahkan input matrik B : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<"Elemen ke "<<(a+1)<<","<<(b+1)<<" : ";
                                    cin>>MatB[a][b];
                        }
            }
            cout<<"\nMatrik B : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<MatB[a][b];
                        }
                        cout<<endl;
            }
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    X[a][b]=0;
                                    for (c=0; c<3; c++)
                                    {
                                                X[a][b] += MatA[a][c] * MatB[c][b];
                                    }
                        }
            }
            cout<<"\nHasil perkaliannya adalah : \n";
            for(a=0; a<3; a++)
            {
                        for(b=0; b<3; b++)
                        {
                                    cout<<setw(4)<<X[a][b];
                        }
                        cout<<endl;
            }
            cout<<endl;
            getch();
}

hasil outputnya akan menjadi seperti ini :


Tidak ada komentar:

Posting Komentar