Multiplicación de matrices de JavaScript

Anika Tabassum Era 15 febrero 2024
  1. Use la unidad lógica para realizar la multiplicación de matrices en JavaScript
  2. Usar métodos para calcular la multiplicación de matrices en JavaScript
Multiplicación de matrices de JavaScript

En JavaScript, no solo tratamos con soluciones de desarrollo web, sino que también podemos tener la flexibilidad de realizar cálculos básicos. Después de todo, es un lenguaje de programación.

Tomaremos una matriz anidada para habilitar un patrón de matriz en JavaScript. Esto representará las filas y columnas sin esfuerzo.

En la multiplicación de matrices, necesitamos establecer algunas condiciones predefinidas. Por ejemplo, si la matriz A tiene “fila_1 = 2”, “columna_1 = 3” y la matriz B tiene “fila_2 = 3”, “columna_2 = 2”, entonces el dúo de matrices es compatible para ser multiplicado.

La condición básica columna_1 tiene que ser igual a fila_2. Y el resultado tendrá un orden de 2x2.

Examinaremos dos ejemplos para explicar la tarea.

Use la unidad lógica para realizar la multiplicación de matrices en JavaScript

En este caso, generaremos un bucle anidado para atravesar toda la matriz, también conocida como la matriz matriz. Comprobaremos los elementos de fila de la primera matriz y calcularemos la operación básica de suma y multiplicación con la columna de la segunda matriz.

Revisemos la valla de código y tratemos de entender.

function multiplyMatrices(m1, m2) {
  var result = [];
  for (var i = 0; i < m1.length; i++) {
    result[i] = [];
    for (var j = 0; j < m2[0].length; j++) {
      var sum = 0;
      for (var k = 0; k < m1[0].length; k++) {
        sum += m1[i][k] * m2[k][j];
      }
      result[i][j] = sum;
    }
  }
  return result;
}
let m1 = [[1, 2, 42], [4, 5, 7]];
let m2 = [[1, 2], [3, 4], [42, 7]];
var result = multiplyMatrices(m1, m2)
console.table(result)

Producción:

Use la unidad lógica para realizar la multiplicación de matrices

Usar métodos para calcular la multiplicación de matrices en JavaScript

Usaremos los métodos map() y reduce() para dibujar el resultado. No es necesario definir explícitamente el proceso de iteración, pero el mapa() se realiza de forma predeterminada.

La siguiente base de código explica el resto de la explicación.

let MatrixProd = (A, B) => A.map(
    (row, i) => B[0].map(
        (_, j) => row.reduce((acc, _, n) => acc + A[i][n] * B[n][j], 0)))

let A = [[1, 2, 3], [4, 5, 6]];
let B = [[1, 2], [3, 4], [5, 6]];
console.table(MatrixProd(A, B));

Producción:

Usar métodos para calcular la multiplicación de matrices

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook