Sabtu, 12 Januari 2013

Perkalian Matriks pada Bahasa Pemrograman C

#include "iostream.h"
#include "conio.h"
#include "iomanip.h"
int A[10][10],B[10][10],C[10][10];
int i,j,k, barisA, kolomA, barisB, kolomB, barisC, kolomC, loop;
void hitung();
void matrikA();
void matrikB();
void cek();
void main()
{
do
{
matrikA();

matrikB();
cek();
}while (loop!=0);
}
void matrikA()
{
cout<<"masukkan ordo matriks A :"<<endl;
cout<>barisA;
cout<>kolomA;
//masukkan matrix A
cout<<"Silahkan input matrik A : \n";
for(i=0;i<barisA;i++)
{
for(j=0;j<kolomA;j++)
{
cout<<"Elemen ke "<<(i+1)<<","<<(j+1)<>A[i][j];
}
}
//cetak matrix A
cout<<"\nMatrik A : \n";
for(i=0;i<barisA;i++)
{
for(j=0;j<kolomA;j++)
{
cout<<setw(4)<<A[i][j];
}
cout<<endl;
}
cout<<endl;
}
void matrikB()
{
//masukkan matriks B
cout<<"masukkan ordo matriks B :"<<endl;
cout<>barisB;
cout<>kolomB;
cout<<"Silahkan input matrik B : \n";
for(i=0;i<barisB;i++)
{
for(j=0;j<kolomB;j++)
{
cout<<"Elemen ke "<<(i+1)<<","<<(j+1)<>B[i][j];
}
}
//cetak matrix B
cout<<"\nMatrik B : \n";
for(i=0;i<barisB;i++)
{
for(j=0;j<kolomB;j++)
{
cout<<setw(4)<<B[i][j];
}
cout<<endl;
}
}
void hitung()
{
//Operasi Perkalian
for (i=0;i<barisA;i++)
{
for (j=0;j<kolomB;j++)
{
C[i][j]=0;
for (k=0;k< barisB;k++)
{
C[i][j]+= A[i][k]*B[k][j];
}
}
}
//Menampilkan hasil
cout<<"\nMatrik C, Hasil : \n";
for(i=0;i<barisA;i++)
{
for(j=0;j<kolomB;j++)
{
cout<<setw(4)<<C[i][j];
}
cout<<endl;
}
cout<<endl;
getch();
}
void cek()
{
if (kolomA==barisB)
{
hitung();
}
if (kolomA!=barisB)
{
cout<<"operasi perkalian tidak bisa dilakukan. Anda salah memasukkan ordo matrik."<<endl;
getch();
}
}

Tidak ada komentar:
Write komentar