fbpx

Responder a: Determinante con Matrices.

  • Adrian de la Cruz Espinosa Zurita

    Miembro
    10 febrero, 2020 en 12:38 am

    Hola, yo igual casi me quemo el coco pensando como resolverlo jeje.

    Les comparto mi código del ejercicio propuesto numero 6 , igual les anexo un link del vídeo en el que se basó mi código, igual ofrezco una disculpa en caso de que este prohibido compartir links.

    El vídeo es el que mejor entendí, de los miles de internet jeje :

    https://www.youtube.com/watch?v=Ix9hDqfNuIA

    Agradezco de antemano cualquier consejo, opinión o idea para mejorar el código o detalles del mismo. Saludos

    /////////////////////////// inicio del código /////////////////////////

    #include <iostream>

    /* run this program using the console pauser or add your own getch, system(“pause”) or input loop

    Un programa que use una matriz de 3×4 para resolver un sistema de 3 ecuaciones con 3 incógnitas

    usando el método de Gauss (hacer ceros por debajo de la diagonal principal para luego aplicar sustitución regresiva).

    */

    using namespace std;

    int main() {

    float mE[3][4]={};//matriz de Ecuaciones

    float x=0,y=0,z=0;

    cout<<” Por favor inserte el valor de las variables de las ecuaciones: “<<endl;

    cout<<“[0][0]x [0][1]y [0][2]z= [0][3]”<<endl;

    cout<<“[1][0]x [1][1]y [1][2]z= [1][3]”<<endl;

    cout<<“[2][0]x [2][1]y [2][2]z= [2][3]”<<endl<<endl;

    for(int r=0;r<=2;r++){

    for(int c=0;c<=3;c++){

    cout<<“Inserte el valor de [“<<r<<“][“<<c<<“]: “;

    cin>>mE[r];

    }

    }

    cout<<“Matriz de ecuaciones inicial: “<<endl<<endl; //Matriz inicial

    for(int r=0;r<=2;r++){

    cout<<mE[r][0]<<“x “<<mE[r][1]<<“y “<<mE[r][2]<<“z = “<<mE[r][3]<<endl;

    }

    // Inicia reduccion de Gauss

    ////////////////////////////////////////////////// Fila2 (x)- fila 3(x)

    mE[2][1]=(mE[1][1]*mE[2][0])-(mE[2][1]*mE[1][0]);

    mE[2][2]=(mE[1][2]*mE[2][0])-(mE[2][2]*mE[1][0]);

    mE[2][3]=(mE[1][3]*mE[2][0])-(mE[2][3]*mE[1][0]);

    mE[2][0]=(mE[1][0]*mE[2][0])-(mE[2][0]*mE[1][0]);

    //////////////////////////////////////////////// Fila1 (x)- fila 2(x)

    mE[1][1]=(mE[0][1]*mE[1][0])-(mE[1][1]*mE[0][0]);

    mE[1][2]=(mE[0][2]*mE[1][0])-(mE[1][2]*mE[0][0]);

    mE[1][3]=(mE[0][3]*mE[1][0])-(mE[1][3]*mE[0][0]);

    mE[1][0]=(mE[0][0]*mE[1][0])-(mE[1][0]*mE[0][0]);

    /////////////////////////////////////////////////// Fila 2 (y)- Fila 3 (y)

    mE[2][2]=(mE[1][2]*mE[2][1])-(mE[2][2]*mE[1][1]);

    mE[2][3]=(mE[1][3]*mE[2][1])-(mE[2][3]*mE[1][1]);

    mE[2][1]=(mE[1][1]*mE[2][1])-(mE[2][1]*mE[1][1]);

    cout<<endl<<endl<<“Matriz de ecuaciones con la reduccion de Gauss: “<<endl<<endl; //Matriz Reducida

    for(int r=0;r<=2;r++){

    cout<<mE[r][0]<<“x “<<mE[r][1]<<“y “<<mE[r][2]<<“z = “<<mE[r][3]<<endl;

    }

    //////Despeje de las variablees z, y , x Sustitucion regresiva

    z= mE[2][3]/mE[2][2];

    y= ( ((mE[1][2]*z)*-1)+mE[1][3] )/mE[1][1];

    x= (mE[0][3]+ ((mE[0][1]*y)*-1) + ((mE[0][2]*z)*-1) )/mE[0][0];

    cout<<endl<<endl<<” El valor de las variables es:”<<endl;

    cout<<” Valor de X = “<<x<<” El valor de Y = “<<y<<” El valor de Z = “<<z;

    return 0;

    }

    //////////////////// Fin del código //////////////////////////////////