menghitung perkalian matrik dengan vektor
2. analisis
-cek baris atau kolom yang jumlahnya sama antara
matrik yang ingin dikalikan.
-syarat untuk mengalikan jumlah kolom matrik a sama
dengan baris vektor b.
-hasil akan dihitung dengan perkalian baris matrik
satu dengan kolom matrik satunya dan seterusnya
3. uji coba data
c1=(a11*b1)+(a12*b2)+(a13*b3) = (1*1+2*2+3*3)=14
c2=(a21*b1)+(a22*b2)+(a23*b3)= (5*1+6*2+7*3)=38
4. flowchart
5. program
#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 cetak_mat(int hasil[][3]){
for(int i=0;i<2;i++){
for(int j=0;j<3;j++)
cout<<hasil[i][j]<<" ";
cout<<endl;
}
}
void cetak_vek(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]={1,2,3,5,6,7}, vektor[3]={1,2,3},hasil[2]={0};
kali(matrik,vektor,hasil);
cout<<"matrik A\n";
cetak_mat(matrik);
cout<<endl;
cout<<"vektor b\n";
cetak_vek(vektor);
cout<<endl;
cout<<"hasil kali matrik A dan vektor b\n";
cetak(hasil);
return 0;
}
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 cetak_mat(int hasil[][3]){
for(int i=0;i<2;i++){
for(int j=0;j<3;j++)
cout<<hasil[i][j]<<" ";
cout<<endl;
}
}
void cetak_vek(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]={1,2,3,5,6,7}, vektor[3]={1,2,3},hasil[2]={0};
kali(matrik,vektor,hasil);
cout<<"matrik A\n";
cetak_mat(matrik);
cout<<endl;
cout<<"vektor b\n";
cetak_vek(vektor);
cout<<endl;
cout<<"hasil kali matrik A dan vektor b\n";
cetak(hasil);
return 0;
}
output
Tidak ada komentar:
Posting Komentar