basicamente lo que hace que pide de cuanto es la matriz cuadrada y luego se ingresan los valores de modo horizontal.
Código C++:
Ver original
#include <iostream.h> #include <alloc.h> #include <math.h> #include <stdlib.h> double det(double **m, int b){ double determinante = 0, aux = 0; int c; if(b==2) return m[0][0]*m[1][1] - m[1][0]*m[0][1]; else{ for(int j=0; j<b; j++){ for(int k=1; k<b; k++){ c = 0; for(int l=0; l<b; l++){ if(l!=j){ menor[k-1][c] = m[k][l]; c++; } } } determinante += aux; for(int q = 0; q<(b-1); q++) } return determinante; } } int main(){ int n; // n = numero de renglones = numero de columnas double **m=NULL; cout<<"Calcular Determinante por Cofactores (Matrices Cuadradas)"<<endl; cout<<"Elija el numero de renglones o columnas que tiene su matriz: "; cin>>n; // Se crea la matriz de forma dinamica // Pide el valor de cada elemento de la matriz for(int y=0; y<n; y++) for(int w=0; w<n; w++){ cout<<"Introduzca el valor de matriz["<<y<<"]["<<w<<"]: "; cin>>m[y][w]; } // Despliego el resultado de la funcion det cout<<"Determinante: "<<det(m, n)<< endl; // Libero la memoria utilizada por la matriz return 0; }