Introducción
En este laboratorio, aprenderemos cómo encontrar la multiplicación de dos matrices (arreglos bidimensionales) en el lenguaje de programación C++. Lo dividiremos en pasos simples, de modo que incluso los nuevos aprendices puedan seguir sin ningún problema.
Incluye los archivos de encabezado necesarios
Creamos un nuevo archivo llamado main.cpp en el directorio ~/project con el siguiente comando:
touch ~/project/main.cpp
En el primer paso, necesitamos incluir los archivos de encabezado necesarios.
#include <iostream>
Utilizaremos el archivo iostream para tomar la entrada y mostrar la salida.
Define la función main()
En el segundo paso, declararemos la función principal.
int main() {
Define Variables
En el tercer paso, necesitamos declarar variables para almacenar las matrices de entrada y el resultado de la multiplicación.
int row1, col1, row2, col2, i, j, k;
int m1[10][10], m2[10][10], pro[10][10];
Aquí, row1 y col1 representan el número de filas y columnas de la primera matriz, respectivamente, y row2 y col2 representan el número de filas y columnas de la segunda matriz, respectivamente. Las variables m1, m2 y pro representan las dos matrices de entrada y la matriz del producto.
Obtener la entrada del usuario
En el cuarto paso, obtendremos las matrices del usuario.
std::cout << "\nEnter the number of Rows and Columns of first matrix : ";
std::cin >> row1 >> col1;
std::cout << "\nEnter the number of Rows and Columns of second matrix : ";
std::cin >> row2 >> col2;
// input of first matrix
std::cout << "\nEnter the " << row1 * col1 << " elements of first matrix : \n";
for (i = 0; i < row1; i++) {
for (j = 0; j < col1; j++) {
std::cin >> m1[i][j];
}
}
// input of second matrix
std::cout << "\nEnter the " << row2 * col2 << " elements of second matrix : \n";
for (i = 0; i < row2; i++) {
for (j = 0; j < col2; j++) {
std::cin >> m2[i][j];
}
}
Aquí, tomamos la entrada del usuario para el número de filas y columnas de las dos matrices, y luego tomamos la entrada para cada elemento de las matrices.
Multiplicar matrices
En el quinto paso, multiplicaremos las matrices.
if (col1 == row2) {
for (i = 0; i < row1; i++) {
for (j = 0; j < col2; j++) {
pro[i][j] = 0;
for (k = 0; k < col1; k++)
pro[i][j] = pro[i][j] + (m1[i][k] * m2[k][j]);
}
}
}
Aquí, primero comprobamos si las matrices son válidas para la multiplicación. Si lo son, realizamos la multiplicación como se explicó en la introducción.
Mostrar matrices
En el sexto paso, mostraremos las matrices.
std::cout << "\nThe first matrix is : \n";
for (i = 0; i < row1; i++) {
for (j = 0; j < col1; j++) {
std::cout << m1[i][j] << " ";
}
std::cout << std::endl;
}
std::cout << "\nThe second matrix is : \n";
for (i = 0; i < row2; i++) {
for (j = 0; j < col2; j++) {
std::cout << m2[i][j] << " ";
}
std::cout << std::endl;
}
std::cout << "\nThe Product matrix is : \n";
for (i = 0; i < row1; i++) {
for (j = 0; j < col2; j++) {
std ::cout << pro[i][j] << " ";
}
std::cout << std::endl;
}
Primero mostramos las dos matrices y luego mostramos la matriz resultante.
Compilar y ejecutar el código
Para compilar el código, abra una terminal y navegue hasta el directorio donde se guardó el archivo de código. Ahora, ejecute el siguiente comando para compilar el código:
g++ main.cpp -o main
Después de que el código se haya compilado correctamente, ejecute el siguiente comando para ejecutar el programa:
./main
Resumen
¡Felicidades! Has aprendido cómo encontrar la multiplicación de dos matrices en el lenguaje de programación C++. Hemos aprendido cómo comprobar si las matrices son válidas para la multiplicación, cómo multiplicar matrices y cómo mostrar las matrices de entrada y resultante. Hemos probado el código en un entorno Linux y hemos aprendido cómo compilar y ejecutar el código.



