import [Link].
Scanner;
public class PerkalianMatriks {
public static void main(String[] args) {
int i, j, k, m, n, p, q, jumlah = 0;
int matriks1[][] = new int[10][10];
int matriks2[][] = new int[10][10];
int hasil[][] = new int[10][10];
Scanner scan = new Scanner([Link]);
[Link]("Masukkan jumlah baris matriks pertama: ");
m = [Link]();
[Link]("Masukkan jumlah kolom matriks pertama: ");
n = [Link]();
[Link]("Masukkan jumlah baris matriks kedua: ");
p = [Link]();
[Link]("Masukkan jumlah kolom matriks kedua: ");
q = [Link]();
if (n != p) {
[Link]("Matriks tidak dapat dikalikan satu sama lain.\n");
} else {
[Link]("Masukkan elemen matriks pertama: ");
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
matriks1[i][j] = [Link]();
[Link]("Masukkan elemen matriks kedua: ");
for (i = 0; i < p; i++) {
for (j = 0; j < q; j++) {
matriks2[i][j] = [Link]();
for (i = 0; i < m; i++) {
for (j = 0; j < q; j++) {
for (k = 0; k < p; k++) {
jumlah = jumlah + matriks1[i][k] * matriks2[k][j];
hasil[i][j] = jumlah;
jumlah = 0;
[Link]("Hasil perkalian matriks: ");
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
[Link](hasil[i][j] + "\t");
[Link]();
}
Penjelasan :
Berikut adalah penjelasan source code programnya :
Baris 3 : Mendeklarasikan class PerkalianMatriks
Baris 5 : mendeklarasikan variable i, j, k, m, n, p, q, jumlah, dimana variable i digunakan
untuk perulangan baris, variable j untuk perulangan kolom, variable k untuk perulangan
operasi perkalian, variable m untuk jumlah baris matriks1, variable n untuk jumlah kolom
matriks1, variable p untuk jumlah baris matriks2, variable q untuk jumlah kolom matriks2,
dan variable jumlah untuk nilai hasil operasi perkalian.
Baris 6 – 8 : mendeklarasikan variable matriks1[10][10], matriks2[10][10], dan hasil[10][10],
yang merupakan array dua dimensi yang memiliki maksimal panjang atau ukurun array baris
dan kolom sebanyak 10.
Baris 9 : Mendeklarasikan variable scan untuk menginput nilai.
baris 11 – 14 : menginputkan nilai ke dalam variable m dan n.
baris 16 – 19 : menginputkan nilai ke dalam variable p dan q.
baris 21 – 22 : pengecekan kondisi jika variable n (jumlah kolom matriks1) tidak sama dengan
variable p (jumlah baris matriks 2) maka akan menampilkan pesan tidak dapat melakukan
perkalian matriks.
baris 24 – 29 : melakukakan perulangan m (baris) dan n (kolom) untuk menginputkan elemen
matriks di variable matriks1.
baris 31 – 36 : melakukakan perulangan p (baris) dan q (kolom) untuk menginputkan elemen
matriks di variable matriks2.
baris 38 – 46 : melakukan perulangan i sebanyak jumlah m, lalu didalamnya melakukan
perulangan j sebanyak jumlah q, kemudian didalamnya melakukan perulangan k sebanyak p
dimana varible jumlah diisikan nilai hasil operasi perkalian. setelah perulangan k maka
variable hasil[i][j] diisikan dengan nilai variable jumlah dan variable jumlah di set ulang
menjadi nol.
baris 48 – 54 : melakukakan perulangan sebanyak jumlah m (baris) dan n (kolom) untuk
menampilkan nilai hasil operasi perkalian matriks.