From 3da4ed3a16075b33e2d556b7d39e4ca56c5a0b59 Mon Sep 17 00:00:00 2001 From: Malya Bansal <68691583+malyabansalper@users.noreply.github.com> Date: Sat, 3 Oct 2020 17:25:43 +0530 Subject: [PATCH] Create Matrix Multiplication --- Matrix Multiplication | 70 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 Matrix Multiplication diff --git a/Matrix Multiplication b/Matrix Multiplication new file mode 100644 index 000000000..1f2fd1f90 --- /dev/null +++ b/Matrix Multiplication @@ -0,0 +1,70 @@ +#include +using namespace std; + +int main() +{ + int a[10][10], b[10][10], mult[10][10], r1, c1, r2, c2, i, j, k; + + cout << "Enter rows and columns for first matrix: "; + cin >> r1 >> c1; + cout << "Enter rows and columns for second matrix: "; + cin >> r2 >> c2; + + // If column of first matrix in not equal to row of second matrix, + // ask the user to enter the size of matrix again. + while (c1!=r2) + { + cout << "Error! column of first matrix not equal to row of second."; + + cout << "Enter rows and columns for first matrix: "; + cin >> r1 >> c1; + + cout << "Enter rows and columns for second matrix: "; + cin >> r2 >> c2; + } + + // Storing elements of first matrix. + cout << endl << "Enter elements of matrix 1:" << endl; + for(i = 0; i < r1; ++i) + for(j = 0; j < c1; ++j) + { + cout << "Enter element a" << i + 1 << j + 1 << " : "; + cin >> a[i][j]; + } + + // Storing elements of second matrix. + cout << endl << "Enter elements of matrix 2:" << endl; + for(i = 0; i < r2; ++i) + for(j = 0; j < c2; ++j) + { + cout << "Enter element b" << i + 1 << j + 1 << " : "; + cin >> b[i][j]; + } + + // Initializing elements of matrix mult to 0. + for(i = 0; i < r1; ++i) + for(j = 0; j < c2; ++j) + { + mult[i][j]=0; + } + + // Multiplying matrix a and b and storing in array mult. + for(i = 0; i < r1; ++i) + for(j = 0; j < c2; ++j) + for(k = 0; k < c1; ++k) + { + mult[i][j] += a[i][k] * b[k][j]; + } + + // Displaying the multiplication of two matrix. + cout << endl << "Output Matrix: " << endl; + for(i = 0; i < r1; ++i) + for(j = 0; j < c2; ++j) + { + cout << " " << mult[i][j]; + if(j == c2-1) + cout << endl; + } + + return 0; +}