Buatlah algoritma dan program untuk
mengalikan matriks dengan vektor. Vektor adalah matriks berdimensi satu
(bisa matriks baris maupun matriks kolom). Implementasikan matriks
dengan array berdimensi dua, dan vektor dengan menggunakan matriks
berdimensi satu.
1. Identifikasi masalah
→ mengalikan matriks dengan vector
2. Menentukan input dan output
→ input :baris
:kolom
:A[max]
: m[baris]
:n
→output :perkalian matriks dan vektor=
3. Membuat Algoritma/flowchart
Deklarasi:
A[maks][maks], baris, kolom, m[baris] ,n :integer
Deskripsi:
for i ←0 to baris do then i++
for j←0 to kolom do then j++
write(‘Masukan data ke ["<<i<<"] ["<<j<<"]’)
end for
end for
write(‘Isi Matriks A ‘)
for i ←0 to baris do then i++
for j←0 to kolom do then j++
write(‘A[i][j]’)
end for
end for
write(‘penghitungan vektor ‘)
for z←0 to kolom do then z++
write(‘Masukan data ke ["<<z<<"] ‘)
end for
write(‘ vektor ‘)
for z←0 to kolom do then z++
write(‘m[z]’)
end for
write(‘perkalian matrik dan vektor ‘)
for i ←0 to baris do then i++
for j←0 to kolom do then j++
for z←0 to kolom do then z++
n←A[i][j]*m[z]
end for
end for
end for
4. Test menggunakan data
inputin→ :baris[2]=|1|
|2|
Kolom[2]=|1|
|2|
Isi matrik A=|1| |2|
|1| |2|
Berapa variable=2
Vektor b=|1|
|2|
output→ :perkalian matrik dan vektor= 1 2 2 4 1 2 2 4
#include <iostream>
#define maks 10
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int A[maks][maks], baris, kolom;
cout<<"input baris :"; cin>>baris;
cout<<"input kolom :"; cin>>kolom;
for(int i=0; i<baris; i++){
for(int j=0; j<kolom; j++){
cout<<"Masukan data ke ["<<i<<"] ["<<j<<"] : "; cin>>A[i][j];
}
}
cout<<"Isi Matriks A :\n";
for(int i=0; i<baris; i++){
for(int j=0; j<kolom; j++){
cout<<A[i][j]<<" ";
}
cout<<endl;
}
int m[baris],n;
cout<<"penghitungan vektor \n";
cout<<"berapa variabel : ";
cin>>m[kolom];
for(int z=0; z<kolom; z++){
cout<<"Masukan data ke ["<<z<<"] "" : "; cin>>m[z];
}
cout<<endl;
cout<<" vektor b : \n";
for(int z=0; z<kolom; z++){
cout<<m[z]<<"\n";
}
cout<<"perkalian matrik dan vektor \n";
for(int i=0; i<baris; i++){
for(int j=0; j<kolom; j++){
for(int z=0; z<kolom; z++){
n=A[i][j]*m[z];
cout<<n<<" ";
}
}
}
return 0;
}
0 komentar:
Posting Komentar