Thursday, 23 June 2011

Perkalian Matriks dengan C++


Berawal dari tugas kuliah yang meminta untuk membuat program perkalian matriks dengan C++, awalnya saya sempat kesulitan. namun setelah googling, akhirnya dapat juga algoritmanya. Dari Algoritma perkalian matriks tadi, kemudian program saya susun sedemikian rupa sehinga menjadi sebuah program perkalian matriks dengan c++ yang sederhana dan cukup mudah untuk di pahami.
(semoga saja begitu).
langsung aja di bawah ini adalah source code c++ dari perkalian matriks tersebut.

#include <iostream>
#include <stdio.h>
#include <windows.h>
#include <conio.h>
using namespace std;
int main()
{
int i,j,k,n,bar_a,bar_b,kol_a,kol_b;
int matrik_A[10][10], matrik_B[10][10], matrik_C[10][10];
//* Menginputkan Indeks Matriks
cout<<"Masukkan jumlah baris Matriks A (1-9) : ";cin>>bar_a;
cout<<"Masukkan jumlah kolom Matriks A (1-9) : ";cin>>kol_a;
cout<<"\nMasukkan jumlah baris Matriks B (1-9) : ";cin>>bar_b;
cout<<"Masukkan jumlah kolom Matriks B (1-9) : ";cin>>kol_b;
cout<<"\n";
//*Menampilkan ukuran matriks
cout<<"\nIndeks Matriks A adalah "<<bar_a<<"X"<<kol_a;
cout<<"\nIndeks Matriks B adalah "<<bar_b<<"X"<<kol_b<<"\n";
//Menginputkan nilai Matriks A
cout<<"\t\t\t***INPUT NILAI MATRIKS A***\n";
for(i=0;i<bar_a;i++)
{
    for(j=0;j<kol_a;j++)
    {
        cout<<"Masukkan baris ke-"<<i+1<<" kolom ke-"<<j+1<<" = ";
        cin>>matrik_A[i][j];
    }
}
//Menginputkan nilai Matriks B
cout<<"\n\n\t\t\t***INPUT NILAI MATRIKS B***\n";
for(i=0;i<bar_b;i++)
{
    for(j=0;j<kol_b;j++)
    {
        cout<<"Masukkan baris ke-"<<i+1<<" kolom ke-"<<j+1<<" = ";
        cin>>matrik_B[i][j];
    }
}

system("cls");
//Menampilkan Matriks A
cout<<"Matriks A"<<endl;
    for (i=0;i<bar_a;i++)
    {
        for (j=0;j<kol_a;j++)
        {
            cout<<matrik_A[i][j]<<" ";
        }
        cout<<endl;
    }
cout<<"\n";
//Menampilkan Matriks B
cout<<"Matriks B"<<endl;
    for (i=0;i<bar_b;i++)
    {
        for (j=0;j<kol_b;j++)
        {
            cout<<matrik_B[i][j]<<" ";
        }
        cout<<endl;
    }
//Melakukan perkalian Matriks
for(i=0;i<bar_a;i++)
{
    for(j=0;j<kol_b;j++)
    {
        matrik_C[i][j] = 0;
        for(k=0;k<kol_a;k++)
        matrik_C[i][j]+=matrik_A[i][k]*matrik_B[k][j];
    }
}
//Menampilkan Hasil Perkalian Matriks
cout<<"\n";
cout<<"\n\nNilai Matriks A X Matriks B adalah :\n";
for(i=0;i<bar_a;i++)
{
    for(j=0;j<kol_b;j++)
    printf("%5d",matrik_C[i][j]);
    cout<<"\n";
}
getch();
}



Anda juga dapat mendownload file program lengkapnya di sini. Di bawah ini adalah screenshot setelah program di jalankan.

(klik gambar untuk memperbesar)

1 comment: