Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Gauss 4x4
//g++ 5.4.0 #include <iostream> #include <iomanip> using namespace std; int gauss4(float [4][4], float [4], float [4]); int mostrar_matriz(float [4][4], float [4]); int main() { float matriz[4][4]; float sol[4]; float b[4]={1,2,3,4}; for(int i=0; i<4;i++){ for(int j=0; j<4; j++){ cin>>matriz[i][j]; } } mostrar_matriz(matriz,b); cout<<"\n"; gauss4(matriz, b, sol); // } int gauss4(float matriz[4][4], float b[4], float sol[4]){ float div[4]; /////////////////////////////////////////////////////////////////////////////////////// for(int i=0; i<4; i++) div[i]=matriz[i][0]; for(int i=0; i<4; i++) matriz[0][i]=matriz[0][i]/div[0]; b[0]=b[0]/div[0]; mostrar_matriz(matriz,b); for(int i=1; i<4; i++){ for(int j=0; j<4; j++){ matriz[i][j]=matriz[i][j]-(div[i]*matriz[0][j])/matriz[0][0]; } b[i]=b[i]-(div[i]*b[0])/matriz[0][0]; } mostrar_matriz(matriz,b); /////////////////////////////////////////////////////////////////////////////////////// for(int i=0; i<4; i++) div[i]=matriz[i][1]; for(int i=0; i<4; i++) matriz[1][i]=matriz[1][i]/div[1]; b[1]=b[1]/div[1]; mostrar_matriz(matriz,b); for(int i=2; i<4; i++){ for(int j=1; j<4; j++){ matriz[i][j]=matriz[i][j]-(div[i]*matriz[1][j])/matriz[1][1]; } b[i]=b[i]-(div[i]*b[1])/matriz[1][1]; } mostrar_matriz(matriz,b); /////////////////////////////////////////////////////////////////////////////////////// for(int i=0; i<4; i++) div[i]=matriz[i][2]; for(int i=0; i<4; i++) matriz[2][i]=matriz[2][i]/div[2]; b[2]=b[2]/div[2]; mostrar_matriz(matriz,b); for(int i=3; i<4; i++){ for(int j=2; j<4; j++){ matriz[i][j]=matriz[i][j]-(div[i]*matriz[2][j])/matriz[2][2]; } b[i]=b[i]-(div[i]*b[2])/matriz[2][2]; } mostrar_matriz(matriz,b); /////////////////////////////////////////////////////////////////////////////////////// for(int i=0; i<4; i++) div[i]=matriz[i][3]; for(int i=0; i<4; i++) matriz[3][i]=matriz[3][i]/div[3]; b[3]=b[3]/div[3]; mostrar_matriz(matriz,b); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ for(int i=0; i<4; i++) div[i]=matriz[i][3]; for(int i=0; i<3; i++){ matriz[i][3]=matriz[i][3]-matriz[3][3]*matriz[i][3]; b[i]=b[i]-b[3]*div[i]; } mostrar_matriz(matriz,b); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ for(int i=0; i<4; i++) div[i]=matriz[i][2]; for(int i=0; i<2; i++){ matriz[i][2]=matriz[i][2]-matriz[2][2]*matriz[i][2]; b[i]=b[i]-b[2]*div[i]; } mostrar_matriz(matriz,b); //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ for(int i=0; i<4; i++) div[i]=matriz[i][1]; for(int i=0; i<1; i++){ matriz[i][1]=matriz[i][1]-matriz[1][1]*matriz[i][1]; b[i]=b[i]-b[1]*div[i]; } mostrar_matriz(matriz,b); return 0; } /* matriz[2][3]=matriz[2][3]-matriz[3][3]*matriz[2][3]; b[2]=b[2]-b[3]*div[2]; matriz[1][3]=matriz[1][3]-matriz[3][3]*matriz[1][3]; b[1]=b[1]-b[3]*div[1]; matriz[0][3]=matriz[0][3]-matriz[3][3]*matriz[0][3]; b[0]=b[0]-b[3]*div[0];*/ /* matriz[1][0]=matriz[1][0]-(div[1]*matriz[0][0])/matriz[0][0]; matriz[1][1]=matriz[1][1]-(div[1]*matriz[0][1])/matriz[0][0]; matriz[1][2]=matriz[1][2]-(div[1]*matriz[0][2])/matriz[0][0]; matriz[1][3]=matriz[1][3]-(div[1]*matriz[0][3])/matriz[0][0]; b[1]=b[1]-(div[1]*div[0])/matriz[0][0];*/ int mostrar_matriz(float matriz[4][4],float b[4]){ printf("\n"); for(int i=0; i<4;i++){ for(int j=0; j<4; j++){ cout<<matriz[i][j]<<" "; } cout<<" "<<b[i]; printf("\n"); } return 0; }
run
|
edit
|
history
|
help
0
Yo que se
Christopher-Stellar
Continuous Sub Set with given sum
MyStack
ISPrime
Hacher Cup
Widget Class with dynamic memory and pointers
without HLD range Quey can be handled by just using segment tree on the FLATTENED TREE (euler tour)
TypeSizeTest
basic TREAP