Perkalian matriks Perkalian vektor v= v[0] v[1] v[2] … … v[n-1] u= u[0] u[1] u[2] … … u[n-1] • Perkalian vektor vektor = skalar (yg akan dibahas) w = uT v , dengan u,v vektor dan menghasilkan w skalar • Perkalian vektor vektor = matriks: W = u vT , W adalah matriks n X n Perkalian vektor vektor = skalar • Bentuk vektor: w = uTv = u[0] u[1] … u[n-1] • Rumus : n-1 w = Σ u[ i ] v[ i ] k=0 v[0] v[1] v[2] … … v[n-1] Implementasi dalam program • Implementasi perkalian vektor vektor = skalar • Cuplikan program : ... w=0;//inisialisasi hasil kali for(i=0;i<n;i++){ w=w+u[i]v[i];//proses perkalian vektor } ... Perkalian matriks Contoh : perkalian matriks 3x3 C = A c[0][0] c[0][1] c[0][2] c[1][0] c[1][1] c[1][2] c[2][0] c[2][1] c[2][2] = B a[0][0] a[0][1] a[0][2] b[0][0] b[0][1] b[0][2] a[1][0] a[1][1] a[1][2] b[1][0] b[1][1] b[1][2] a[2][0] a[2][1] a[2][2] b[2][0] b[2][1] b[2][2] Penentuan nilai elemen matriks C • • • • • • • c[0][0] = a[0][0] b[0][0] + a[0][1] b[1][0] + a[0][2] b[2][0] c[0][1] = a[0][0] b[0][1] + a[0][1] b[1][1] + a[0][2] b[2][1] c[0][2] = a[0][0] b[0][2] + a[0][1] b[1][2] + a[0][2] b[2][2] c[1][0] = a[1][0] b[0][0] + a[1][1] b[1][0] + a[1][2] b[2][0] …. c[2][2] = a[2][0] b[0][2] + a[2][1] b[1][2] + a[2][2] b[2][2] Dalam format umum, elemen matriks C (baris ke-i dan kolom ke-j) ditentukan dengan rumus sbb: n-1 c[ i ][ j ] = Σ a[ i ][ k ] b[ k ][ j ] k=0 Dengan n = jumlah kolom matriks A = jumlah baris matriks B Implementasi perkalian matriks dalam program • Rumus perkalian matriks n-1 c[ i ][ j ] = Σ a[ i ][ k ] b[ k ][ j ] k=0 dilakukan sebanyak jumlah baris A X jumlah kolom B Implementasi dalam bahasa C • Cuplikan program untuk menghitung perkalian matriks 3x3: m=3; // jumlah baris matriks A n=3; // jumlah kolom matriks B kol_bar=3; //jml kolom matriks A=jml baris matriks B for(i=0;i<m;i++){ for(j=0;j<n;j++){ c[i][j]=0; //inisialisasi elemen[i][j] matriks C for(k=0;k<kol_bar;k++){ c[i][j]=c[i][j]+a[i][k]*b[k][i]; //realisasi rumus perkalian matriks } } }