The multiplication of two matrices using array type C++ source code example
Compiler: Visual C++ Express Edition 2005
Compiled on Platform: Windows XP Pro SP2
Header file: Standard
Additional project setting: Set project to be compiled as C++
Project -> your_project_name Properties -> Configuration Properties -> C/C++ -> Advanced -> Compiled As: Compiled as C++ Code (/TP)
Other info: none
To do: Multiply two matrices using array type in C++ programming
To show: How to multiply two matrices in C++ programming using array types
// C++ multiplication of the matrix x and matrix y and stores the result in matrix z
#include <iostream>
using namespace std;
#define m 3
#define c 2
#define n 4
int main(void)
{
int i, j, k;
// first matrix
int x[m][c] = {{1,2},{3,4},{5,6}};
// second matrix
int y[c][n] = {{7,8,9,10},{11,12,13,14}};
// for storing the matrix product result
int z[m][n];
for(i=0; i<m; i++)
for(j=0; j<n; j++)
{
z[i][j] = 0;
for(k=0; k<c; k++)
// same as z[i][j] = z[i][j] + x[i][k] * y[k][j];
z[i][j] += x[i][k] * y[k][j];
}
cout<<"\nMultiply matrix x and matrix y,";
cout<<"\nThen store the result in matrix z.";
cout<<"\nMatrix x is 3x2, and matrix y is 2x4,";
cout<<"\nso, the result, z should be matrix 3x4\n";
cout<<"\nThe matrix product is: \n";
for (i=0; i<m; i++)
{
cout<<"\n";
for(j=0; j<n; j++)
// display the result...
cout<<" "<<z[i][j];
}
cout<<endl;
return 0;
}
Output example:
Multiply matrix x and matrix y,
Then store the result in matrix z.
Matrix x is 3x2, and matrix y is 2x4,
so, the result, z should be matrix 3x4
The matrix product is:
29 32 35 38
65 72 79 86
101 112 123 134
Press any key to continue . . .