// Fungsi untuk mengalikan dua matriks
function multiplyMatrices(matrixA, matrixB) {
// Mendapatkan ukuran matriks
const rowsA = matrixA.length;
const colsA = matrixA[0].length;
const rowsB = matrixB.length;
const colsB = matrixB[0].length;
// Pastikan jumlah kolom matriks pertama sama dengan jumlah baris matriks kedua
if (colsA !== rowsB) {
throw new Error("Jumlah kolom matriks pertama harus sama dengan jumlah baris matriks kedua.");
}
// Inisialisasi matriks hasil
let result = new Array(rowsA).fill(0).map(() => new Array(colsB).fill(0));
// Perkalian matriks menggunakan nested loop
for (let i = 0; i < rowsA; i++) { // [0] []
for (let j = 0; j < colsB; j++) { //[0]. [1]
for (let k = 0; k < colsA; k++) { //[0]
result[i][j] += matrixA[i][k] * matrixB[k][j]; //[0,0] [0,0] | [0,1], [1,0], [1,0], [0,1]
}
}
}
return result;
}
// Contoh penggunaan
const matrixA = [
[1, 2],
[3, 4]
];
const matrixB = [
[5, 6],
[7, 8]
];
console.log(matrixA[1][0]);
const result = multiplyMatrices(matrixA, matrixB);
console.log("Hasil Perkalian Matriks:", result);