Rabu, 25 Mei 2016

Perkalian vektor (2 elemen) dengan matriks berukuran 2x3 dan vektor (3 elemen)



1.      Identifikasi masalah

Mengalikan vektor 2 elemen dan matrik 2 x 3 sekaligus vektor 3 elemenn.

2.      Menentukan input dan output

     input   : matrik[2][3]={1,2,3,2,3,4}.

                    vektor[3]={1,2,3}.
                    vek[2]={1,2,}     output : hasil[2].

3.       Membuat flowchart/ Algoritma

     Deklarasi :
     matrik[2][3] = {1,2,3,2,3,4} <- integer
    vektor[2]        = {1,2,3} <- integer
    vek[2]              = {1,2} <- integer
    hasil[2]           = {0} <- integer
   Deklarasi :
   for i<-0 to i<-2 do
          for j<-0 to j<-3 do
                 hasil[i]=hasil[i]+(matrik [i][j]*vektor[j]);
                 write hasil[i];
        end for
endfor
for i<-0 toi<-2 do
  hasil[i]=hasil[i]*vek[i];
  write hasil[i];
endfor
end

4. Test Menggunakan Data.

data vektor(2 elemen), matrik(ordo 2x3) dan vektor(3 elemen)
           j=0                       j=0  j=1  j=2                        j=0
A i=0|1|             B i=0| 1       2      3  |           C i=0| 1 |
    i=1|2|                 i=1| 2       3      4  |              i=1 | 2 |
                                                                             i=2 | 3 |
Perkalian antara matrik B sama vektor C
             j=0  j=1  j=2                            j=0
D i=0|  1       4     9 |     =        D i=0| 14|
    i=1 |  2      6     12|    =             i=1 |20|
Setelah dapat hasil dari matrik B sama vektor C maka di kalikan lagi dengan vektor A
             j=0                    j=0                          j=0
D i=0|14|       A i=0| 1 |      =       E i=0|14|
     i=1|20|           i=1| 2 |      =           i=1 |20|

5. Implementasi C++

#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

void kali(int matrik[2][3],int vektor[3],int hasil[2]){
 cout<<"matrik 2x3 : \n";
 for(int i=0;i<2;i++){
  for(int j=0;j<3;j++)
   hasil[i]=hasil[i]+(matrik[i][j]*vektor[j]);
 }
}
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[]){
 cout<<"vektor 3 elemen : \n";
 for(int i=0;i<3;i++){
  cout<<vektor[i]<<endl;
 }
}

void cetak(int hasil[]){
 cout<<"hasil matrik 2x3 dan vektor 3 elemen : \n";
 for(int i=0;i<2;i++){
  cout<<hasil[i]<<endl;
 }
}
void cetakb(int vek[]){
 cout<<"vektor 2 elemen : \n";
 for(int i=0;i<2;i++){
  cout<<vek[i]<<endl;
 }
}

void cetaka(int vek[2],int hasil[]){
 cout<<"hasil akhir : \n";
   for(int i=0;i<2;i++){
 hasil[i]=hasil[i]*vek[i];
 cout<<hasil[i]<<endl;
}
}
int main(int argc, char** argv) {
 int matrik[2][3]={1,2,3,2,3,4}, vektor[3]={1,2,3},vek[2]={1,2},hasil[2]={0};
 kali(matrik,vektor,hasil);
 cetakm(matrik);
 cetakv(vektor);
 cetak(hasil);
 cetakb(vek);
cetaka(vek,hasil);
return 0;
}
 
6.esekusi

Tidak ada komentar:

Posting Komentar