Producto de matrices en C (multiplicación)

Producto de matrices en C

Resumen: obtener el producto de matrices en C desarrollando el algoritmo con ciclos for y almacenar el resultado en una nueva matriz, validando las filas y columnas.

Hoy vamos a resolver un ejercicio matemático en C que trata sobre la multiplicación de matrices. El algoritmo es muy sencillo pero para ello primero debemos saber cómo se multiplican las matrices.

Si no sabes cómo multiplicar matrices manualmente puedes ver este enlace de Geogebra en donde se muestra que para multiplicar dos matrices, el número de columnas de la primera matriz debe ser igual al número de filas de la segunda matriz.

Multiplicación de matrices en C

En ocasiones voy a llamar a la primera matriz A, y a la segunda B.

Para obtener el producto de matrices en C comenzamos recorriendo cada columna de la segunda matriz. Dentro de ese ciclo recorremos cada fila de la primera matriz y dentro de ese ciclo recorremos cada columna (celda) de la primera matriz.

Es decir, recorremos la primera matriz normalmente, en x e y. Pero eso lo colocamos dentro de un ciclo que recorre las filas de B.

Finalmente en cada iteración paso sumamos los productos de toda la fila y lo acomodamos en la matriz resultante.

Producto de matrices en C – Código

Una vez dicho esto veamos el código. Primero definimos nuestras matrices y hacemos la validación:

Si se pasa la validación entonces definimos una matriz del mismo tamaño de B:

Hacemos los 3 ciclos y dentro vamos acomodando los valores en la matriz producto:

Fíjate que en la línea 9 multiplicamos lo que hay en A[i][j] por lo que hay en B[j][a], es decir, j se repite pero en el primer caso como fila y en el segundo como columna.

Finalmente imprimimos la matriz:

Poniendo todo junto

El código completo queda así:

Puedes probarlo en línea justo aquí. Los valores de la matriz y el resultado coinciden con los del enlace que dejé al principio.

En mi caso el resultado se ve así:

Producto de matrices en C

Ejecutando programa en C para multiplicar matrices y almacenar el resultado en otra matriz

¿Más ejercicios de C? click aquí.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *