
LABORATORIO 4
#include<iostream>
#include<math.h>
using namespace std ;
//
int determinante_2_matrices(),leer_matriz(),ver_e_matriz(),leer_2_matrices(),SUMAR_2_matrices(),identidad_de_matriz(),i,j,z,k,matriz, transpuesta_de_una_matriz(),multiplicacion_2_matrices();
double M[3][3],A[3][3],B[3][3], c[3][3];
double a00,a01,a02,a10,a11,a12,a20,a21,a22,total;
int opcion;
int main ()
{
do
{
cout<<"menu \n";
cout<<" 1.- leer matriz \n" ;
cout<<" 2.- ver matriz \n" ;
cout<<" 3.- leer 2 matrices \n" ;
cout<<" 4.- sumar 2 matrices \n" ;
cout<<" 5.- identidad matriz\n" ;
cout<<" 6.- indenitidad transpuesta\n" ;
cout<<" 7.- multiplicar 2 matrices\n" ;
cout<<" 8.- deeterminante 2 matrices \n" ;
cout<<" Ingrese una opcion : " ;
cin>>opcion;
switch(opcion)
{
case 1:
{
leer_matriz();
};break;
case 2:
{
ver_e_matriz();
};break;
case 3:
{
leer_2_matrices();
};break;
case 4:
{
SUMAR_2_matrices();
};break;
case 5:
{
identidad_de_matriz();
};break;
case 6:
{
transpuesta_de_una_matriz();
};break;
case 7:
{
multiplicacion_2_matrices();
};break;
case 8:
{
determinante_2_matrices();
};break;
}//FIN SWITCH
} while(opcion=!0);
}//fin de programa
// case 1
int leer_matriz()
{
for (i=1;i<=3;i++)
for(j=1;j<=3;j++)
{
cout<<"M["<<i<<"]["<<j<<"]= "; cin>>M[i][j];
}
}
// case 2
int ver_e_matriz()
{
for(i=1;i<=3;i++)
{
for(j=1;j<=3;j++)
{
cout<<M[i][j];
}
cout<<endl;
}
}
// case 3
int leer_2_matrices()
{
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
{
cout<<"M["<<i<<"]["<<j<<"]= "; cin>>A[i][j];
cout<<endl;
}
cout<<"matriz B[][]";
cout<<endl;
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
{
cout<<"M["<<i<<"]["<<j<<"]= "; cin>>B[i][j];
cout<<endl;
}
cout<<" matriz A";
cout<<endl;
for(i=1;i<=3;i++)
{
for(j=1;j<=3;j++)
{
cout<<"\t"<<A[i][j];
}
cout<<endl;
}
cout<<" matriz B";
cout<<endl;
for(i=1;i<=3;i++)
{
for(j=1;j<=3;j++)
{
cout<<"\t"<<B[i][j];
}
cout<<endl;
}
}
//case 4
int SUMAR_2_matrices()
{
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
M[i][j]=A[i][j]+B[i][j];
ver_e_matriz();
}
// case 5
int identidad_de_matriz()
{
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
{
if(i==j)
M[i][j]=1;
if(i=!j)
M[i][j]=0;
}
}
// case 6
int transpuesta_de_una_matriz()
{
for(i=1;i<=3;i++)
{
for(j=1;j<=3;j++)
{
cout<<M[j][i];
}
cout<<endl;
}
}
//case 7
int multiplicacion_2_matrices()
{
for(i=1;i<3;i++)
{
for(j=1;j<3;j++)
{
c[i][j]=1;
for(k=1;k<3;k++)
{
c[i][j]=c[i][j]+(A[i][k]*B[k][j]);
}
}
}
cout << endl << "MATRIZ C (Matriz A*B)." << endl;
cout << endl;
for(i=1;i<3;i++)
{
for(j=1;j<3;j++)
{
cout << c[i][j] << " ";
if(j==2)
cout << endl;
}
}
}
//case 8
int determinante_2_matrices()
{
cout<<"Ingrese los valores:"<<endl;
cout<<"|a00 a01 a02|" <<endl;
cout<<"|a10 a11 a12|" <<endl;
cout<<"|a20 a21 a22|" <<endl;
cout<<"a00: ";
cin>>a00;
cout<<"a01: ";
cin>>a01;
cout<<"a02: ";
cin>>a02;
cout<<"a10: ";
cin>>a10;
cout<<"a11: ";
cin>>a11;
cout<<"a12: ";
cin>>a12;
cout<<"a20: ";
cin>>a20;
cout<<"a21: ";
cin>>a21;
cout<<"a22: ";
cin>>a22;
total=a00*a11*a22 + a10*a21*a02 +a20*a01*a12;
total=total+(a02*a11*a20)*-1 + (a12*a21*a00)*-1 + (a22*a01*a10)*-1;
if(total!=0)
{
cout<<"Determinante 3x3: "<<total;
}
else
{
cout<<"Error el det. da 0";
}
}