Monday, May 23, 2016

PERKALIAN MATRIK DENGAN VEKTOR C++

https://massmada.blogspot.com/2016/05/perkalian-matrik-dengan-vektor-c.html
Selamat malam, artikel ini akan  dibahas program perkalian matrik dengan vektor menggunakan C++, disini saya akan memberikan bukan hanya c++ nya saja, tetapi terdapat juga algoritma/flowchart, mengidentifikasi input/output, memahami masalah, test menggunakan data, implementasi menggunakan bahasa c++, debug(hasil eksekusi ) . Berikut :


Analisis kasus : 
Perkalian matrik berordo 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.

Menentukan input dan output :
m,n,p, matriks1, matriks2, baris, kolom, i, j, hasil : integer {input}
matriks1, matriks2, hasil : integer {output}

Membuat flowchart/Algoritma :

- Algoritma :

for i <-- 1 to baris do
    for j <-- 1 to kolom do
          mat_kali[i,j] <-- 0;
          for k <-- 1 to barkol do
                    mat_kali[i,j] <-- mat_kali[i,j] + matriks1[i,k] * matriks2[k,j]
         endfor
    endfor
endfor


- Raptor/flowchart : 

main
https://massmada.blogspot.com/2016/05/perkalian-matrik-dengan-vektor-c.html
baca_matriks



baca_matriks2
kali_matriks
cetak_matriks
TEST MENGGUNAKAN  DATA : 

Misalkan data  matriks ke-1 :

 Data[1,1] diisi 1
 Data[1,2] diisi 2
 Data[1,3] diisi 3
 Data[2,1] diisi 4
 Data[2,2] diisi 5
 Data[2,3] diisi 6

Maka akan tampil matrik seperti dibawah 

1 2 3
4 5 6 

Misalkan data matriks ke-2 :
Data[1,1] diisi 7
Data[2,1] diisi 8
Data[3,1] diisi 9

Maka akan tampil matriks ke-2 seperti dibawah :

7
8
9

dan akan mencetak dari hasil perkaliannya matriknya menjadi berordo 1x2 , yaitu :

50
122 


IMPLEMENTASI BAHASA C++ :

#include <iostream>
using namespace std;
void baca_matriks (int mat[10][10], int baris, int kolom){
    int i,j;
    for (i=0; i<baris; i++)
        for (j=0; j<kolom; j++){
            cout << "Data [" << i+1 << "," << j+1 << "] : ";
            cin >> mat[i][j];
        }
}

void kali_matriks(int matriks1[10][10], int matriks2[10][10], int baris, int kolom, int barkol, int mat_kali[10][10]){
    for (int i=0; i<baris; i++)
        for (int j=0; j<kolom; j++){
            mat_kali[i][j] = 0;
            for (int k=0; k<barkol; k++)
                mat_kali[i][j] = mat_kali[i][j] + matriks1[i][k] * matriks2[k][j];
        }
}

void cetak_matriks (int A[10][10], int baris, int kolom){
    for (int i=0; i<baris; i++){
        for (int j=0; j<kolom; j++)
            cout << A[i][j];
        cout << endl;
    }
}

main() {
    int m, n, p;
    int matriks1[10][10], matriks2[10][10];
    int hasil[10][10];
    m = 2;
    p=3;
    n=1;
   
    cout<<"Data matriks ke-1"<<endl;
    baca_matriks(matriks1,m,p);
    cetak_matriks(matriks1,m,p);
    cout<<"Data matriks ke-2"<<endl;
    baca_matriks(matriks2,p,n);
    cetak_matriks(matriks2,p,n);
    kali_matriks(matriks1,matriks2,m,n,p,hasil);
    cout<<"Hasil perkalian : "<<endl;
    cetak_matriks(hasil,m,n);
}

DEBUG(hasil eksekusi) :




dari kertas nya :


https://massmada.blogspot.com/2016/05/perkalian-matrik-dengan-vektor-c.html




 

Bagikan

Jangan lewatkan

PERKALIAN MATRIK DENGAN VEKTOR C++
4/ 5
Oleh

Subscribe via email

Suka dengan artikel di atas? Tambahkan email Anda untuk berlangganan.

Silahkan berkomentar secara bijak dan sesuai dengan topik pembahasan ...

Untuk menyisipkan kode pendek, gunakan <i rel="code"> ... KODE ... </i>
Untuk menyisipkan kode panjang, gunakan <i rel="pre"> ... KODE ... </i>
Untuk menyisipkan gambar, gunakan <i rel="image"> ... URL GAMBAR ... </i>