From 6993ca7375acbd7bd4fb0d5f35439b9e06e622e2 Mon Sep 17 00:00:00 2001 From: superdimensional Date: Mon, 19 Apr 2021 02:06:46 -0400 Subject: [PATCH] 2*2 matrix determinant calculator --- main.c | 8 +++++--- matrices.h | 30 ++++++++++++++++++++++++++++-- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/main.c b/main.c index c75a91a..e610dd1 100644 --- a/main.c +++ b/main.c @@ -13,7 +13,7 @@ int main() printf("\n\n 1. Hypotenuse calculator"); printf("\n 2. Quadratic formula calculator"); printf("\n 3. Area of a circle"); - printf("\n 4. * Matrix determinant *"); + printf("\n 4. Matrix determinant"); printf("\n 5. Matrix addition"); printf("\n 6. * Matrix multiplication *"); printf("\n 7. Scalar matrix multiplication"); @@ -83,8 +83,10 @@ int main() case 4: system("clear"); - printf("\n ~~ Matrix determinant ~~\n\n"); - + printf("\n ~~ 2*2 Matrix determinant ~~\n\n"); + int det; + det = determinant(); + printf("\nThe determinant is %d!\n",det); break; case 5: diff --git a/matrices.h b/matrices.h index be7261f..f21c1fd 100644 --- a/matrices.h +++ b/matrices.h @@ -59,10 +59,9 @@ int matrixAddition(int numRows, int numColumns) int scalarMultiplication(int numRows, int numColumns, int scalar) { - int matrix[numRows][numColumns]; - printf("\nEnter elements in matrix of size %d*%d \n", numRows, numColumns); + printf("\nEnter elements in matrix of size %d*%d! \n", numRows, numColumns); for (int i = 0; i < numRows; i++) { @@ -85,6 +84,33 @@ int scalarMultiplication(int numRows, int numColumns, int scalar) return 0; } +int determinant() +{ + int det; + int matrix[2][2]; + printf("\nEnter elements in matrix: \n"); + for (int i = 0; i < 2; i++) + { + for (int j = 0; j < 2; j++) + { + scanf("%d", &matrix[i][j]); + } + }; + + printf("\nElements in matrix are: \n"); + for (int i = 0; i < 2; i++) + { + for (int j = 0; j < 2; j++) + { + printf(" %d ", matrix[i][j]); + } + printf("\n"); + } + + det = (matrix[0][0] * matrix[1][1]) - (matrix[0][1] * matrix[1][0]); + return det; +} + // int buildMatrix(int numRows, int numColumns) // {