Multiplicación de Matrices: En el caso de la multiplicación de matrices, para que dicha operación pueda realizase, se requiere que el número de columnas de la primera matriz sea igual al de filas de la segunda matriz. Si dicha condición se cumple, entonces se puede concebir que cada elemento de la multiplicación sea resultado de aplicar de la siguiente fórmula: donde A y B son las matrices a multiplicar, C es la matriz donde se guarda el resultado y C[i,j] es un elemento de la matriz C. Nótese el uso del elemento k. El elemento k es un entero que sirve como contador de las columnas en la matriz A y como contador de filas en la matriz C. ejemplo realizado en lenguaje C:
#include<iostream>
using namespace std;
int main(){
int m,n,k,i,j,l;
float h;
cout<<"nIngrese orden de la primera matriz A[mxn]"<<endl;
cout<<"nm = ";cin>>m;
cout<<"nn = ";cin>>n;
cout<<"nIngrese orden de la columa de la matriz b["<<n<<"][k]"<<endl;
cout<<"nk = ";cin>>k;
int a[m][n],b[n][k],p[m][k];
//ingreso de elementos de matriz A
system("cls");
cout<<"nMatriz A["<<m<<"x"<<n<<"]n"<<endl;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
cout<<"A["<<i+1<<","<<j+1<<"] = ";cin>>a[i][j];
}
}
//ingreso de elementos de matriz B
system("cls");
cout<<"nMatriz B["<<n<<"x"<<k<<"]n"<<endl;
for(i=0;i<n;i++){
for(j=0;j<k;j++){
cout<<"B["<<i+1<<","<<j+1<<"] = ";cin>>b[i][j];
}
}
//producto de A y B
for(i=0;i<m;i++){
for(j=0;j<k;j++){
p[i][j]=0;
for(l=0;l<n;l++){
p[i][j]=p[i][j]+(a[i][l]*b[l][j]);
}
}
}
//muestra la matriz producto
system("cls");
cout<<"nnLa matriz producto AxB es : nn";
for(i=0;i<m;i++){
for(j=0;j<k;j++){
cout<<p[i][j]<<"t";
}
cout<<endl;
}
system("pause");
return 0;
}