C Online Compiler
Example: Determinant of 3x3 Matrix in C
C
C++
C#
Java
Python
PHP
main.c
STDIN
Run
// Determinant of 3x3 Matrix #include <stdio.h> // Function to calculate determinant of a 2x2 matrix (helper for 3x3) int determinant2x2_helper(int matrix[2][2]) { return (matrix[0][0] * matrix[1][1]) - (matrix[0][1] * matrix[1][0]); } // Function to calculate determinant of a 3x3 matrix int determinant3x3(int matrix[3][3]) { int det = 0; // Cofactor for first element (0,0) // Submatrix: | matrix[1][1] matrix[1][2] | // | matrix[2][1] matrix[2][2] | int submatrix1[2][2] = { {matrix[1][1], matrix[1][2]}, {matrix[2][1], matrix[2][2]} }; det += matrix[0][0] * determinant2x2_helper(submatrix1); // Cofactor for second element (0,1) with negative sign // Submatrix: | matrix[1][0] matrix[1][2] | // | matrix[2][0] matrix[2][2] | int submatrix2[2][2] = { {matrix[1][0], matrix[1][2]}, {matrix[2][0], matrix[2][2]} }; det -= matrix[0][1] * determinant2x2_helper(submatrix2); // Cofactor for third element (0,2) // Submatrix: | matrix[1][0] matrix[1][1] | // | matrix[2][0] matrix[2][1] | int submatrix3[2][2] = { {matrix[1][0], matrix[1][1]}, {matrix[2][0], matrix[2][1]} }; det += matrix[0][2] * determinant2x2_helper(submatrix3); return det; } int main() { // Step 1: Define a 3x3 matrix int matrix[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // Step 2: Calculate its determinant int det = determinant3x3(matrix); // Step 3: Print the result printf("The 3x3 matrix:\n"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%d ", matrix[i][j]); } printf("\n"); } printf("Determinant = %d\n", det); // Another example int matrix2[3][3] = { {6, 1, 1}, {4, -2, 5}, {2, 8, 7} }; det = determinant3x3(matrix2); printf("\nThe second 3x3 matrix:\n"); for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%d ", matrix2[i][j]); } printf("\n"); } printf("Determinant = %d\n", det); return 0; }
Output
Clear
ADVERTISEMENTS