#define TAILLE_MAX 100 int determinant( int matrice[TAILLE_MAX][TAILLE_MAX], int taille ) { int i, j, k, l; int det = 0; int matrice1[TAILLE_MAX][TAILLE_MAX] = {0}; if (taille == 2) { det = matrice[0][0] * matrice[1][1] - matrice[1][0] * matrice[0][1] ; } else { if ( taille < 0 ) return det ; if ( taille > TAILLE_MAX ) return det ; for (i = 0 ; i < taille ; i++) { for (j = 1 ; j < taille ; j++) { l = 0; for (k = 0; k < taille; k++) { if (k i) continue; matrice1[j-1][l++] matrice[j][k]; } } det += pow(-1.0, i) * matrice[0][i] * determinant(matrice1, taille-1); } } return det ; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question