Analisis kasus :
Perkalian matrik ber ordo 2x3 dengan vektor nya :
- Syarat dua matriks dapat dikalikan adalah ukuran kolom matriks pertama haruslah sama
dengan ukuran baris matriks kedua. Misalnya matiks A berukuran 2 x 3 dan matriks B berukuran 3 x 1 (vektor) dan akan menghasilkan matriks C berukuran 1 x 2. Untuk memperoleh elemen c[i,j] maka suku perkalian dari elemen a dengan baris i dan b dengan kolom j. Sedangkan kolom elemen a dan baris elemen b harus mempunyai perulangan tersendiri.
Algoritma
for i <-- 1 to 2 do
for j <-- 1
mat_kali[i,j] <-- 0;
for k <-- 1 to barkol do
c[i,j] <--c[i,j] + a[i,k] * b[k]
endfor
endfor
endfor
c++
#include <iostream>
using namespace std;
void kali(int matrik[2][3],int vektor[3],int hasil[2]){
for(int i=0;i<2;i++){
for(int k=0;k<3;k++)
hasil[i]=hasil[i]+(matrik[i][k]*vektor[k]);
}
}
void cetakm(int hasil[][3]){
for(int i=0;i<2;i++){
for(int j=0;j<3;j++)
cout<<hasil[i][j]<<" ";
cout<<endl;
}
}
void cetakv(int vektor[]){
for(int i=0;i<3;i++){
cout<<vektor[i]<<endl;
}
}
void cetak(int hasil[]){
for(int i=0;i<2;i++){
cout<<hasil[i]<<endl;
}
}
int main(int argc, char** argv) {
int matrik[2][3]={3,4,2,6,5,1}, vektor[3]={1,2,3},hasil[2]={0};
kali(matrik,vektor,hasil);
cout<<"matrik A\n";
cetakm(matrik);
cout<<"vektor b\n";
cetakv(vektor);
cout<<"hasil kali\n";
cetak(hasil);
return 0;
}






