Isnin, 23 Mei 2016

perkalian matriks dan vektor


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;
}



Load disqus comments

0 ulasan