#include <stdio.h>
#include <stdlib.h>
#define N 3 //O numero de equações (linhas do sistema linear)
void main (){
int i, j, k;
float fator, soma;
float X[N];
float M[N][N+1] = {{3, -0.1, -0.2, 7.85},
{0.1, 7, -0.3, -19.3},
{0.3, -0.2, 10, 71.4}};
for(i = 0; i<N; i++){
for(j = 0; j<=N; j++){
printf("|%.3f\t", M[i][j]);
}
printf("\n");
}
// ELIMINACAO PROGRESSIVA
for(k = 0; k<N-1; k++){
for(i = (k+1); i<N; i++){
fator = M[i][k] / M[k][k];
for(j=0; j<=N; j++){
M[i][j] = M[i][j] - fator*M[k][j];
}
}
}
X[N-1] = M[N-1][N] / M[N-1][N-1];
//Test
printf("\n");
for(i = 0; i<N; i++){
for(j = 0; j<=N; j++){
printf("|%.3f\t", M[i][j]);
}
printf("\n");
}
// SUBSTITUICAO PROGRESSIVA
for(i=N-2; i>=0; i--){
soma = 0;
for(j=(i+1); j<N; j++){
soma = soma + M[i][j]*X[j];
}
X[i] = (M[i][N] - soma)/M[i][i];
}
printf("\nResultado: " );
for(i=0; i<N; i++)
printf("\nX%d = %f\n", i+1, X[i]);
}
#include <stdio.h>
#include <stdlib.h>
#define N 3 //O numero de equações (linhas do sistema linear)
void main (){
int i, j, k;
float fator, soma;
float X[N];
float M[N][N+1] = {{3, -0.1, -0.2, 7.85},
{0.1, 7, -0.3, -19.3},
{0.3, -0.2, 10, 71.4}};
for(i = 0; i<N; i++){
for(j = 0; j<=N; j++){
printf("|%.3f\t", M[i][j]);
}
printf("\n");
}
// ELIMINACAO PROGRESSIVA
for(k = 0; k<N-1; k++){
for(i = (k+1); i<N; i++){
fator = M[i][k] / M[k][k];
for(j=0; j<=N; j++){
M[i][j] = M[i][j] - fator*M[k][j];
}
}
}
X[N-1] = M[N-1][N] / M[N-1][N-1];
//Test
printf("\n");
for(i = 0; i<N; i++){
for(j = 0; j<=N; j++){
printf("|%.3f\t", M[i][j]);
}
printf("\n");
}
// SUBSTITUICAO PROGRESSIVA
for(i=N-2; i>=0; i--){
soma = 0;
for(j=(i+1); j<N; j++){
soma = soma + M[i][j]*X[j];
}
X[i] = (M[i][N] - soma)/M[i][i];
}
printf("\nResultado: " );
for(i=0; i<N; i++)
printf("\nX%d = %f\n", i+1, X[i]);
}