#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream>
using namespace std;
float A[5][5]={{4,1,2},{1,3,1},{1,2,5}};
float G[5][6];
float b[5]={16,10,12};
float factor,dummy,x[5];
int i,j,k,n=3;
main(){
// bentuk matriks gabungan
for(i=0;i<n;i++) for(j=0;j<n;j++) G[i][j]=A[i][j];
for(j=0;j<n;j++) G[j][n]=b[j];
printf("Matriks penggabungan\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// proses eliminasi
for(i=0;i<n-1;i++){
for(j=i+1;j<n;j++){
factor = G[j][i]/G[i][i];
for(k=i;k<=n;k++) G[j][k]=G[j][k]-factor*G[i][k];
}
}
printf("Matriks setelah eliminasi\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// substitusi mundur
x[n-1]=G[n-1][n]/G[n-1][n-1];
for(i=n-2;i>=0;i--){
dummy = G[i][n];
for(j=i+1;j<n;j++) {
dummy = dummy - G[i][j]*x[j];
}
x[i]=dummy/G[i][i];
}
printf("Hasil akhir\n");
for(i=0;i<n;i++) printf("x[%2d] = %g\n",i,x[i]);
}
0 komentar:
Posting Komentar