Merhaba arkadaşlar. Yine NxN boyutunda herhangi bir denklem sistemini çözen hem de Gauss Jordan metodu ile hesap eden bir C programının kaynak kodu. Uygulamada
örneğin 2x2 bir sistem için a[0][0],a[0][1],a[1][0],a[1][1] elemanları denklemdeki katsayılar matrixi için sistemde sorulacak a[0][2] 1. denklemin sonucu , a[1][2] ise 2. denklemin sonucu olarak girilmesi gerekir. Uygulama yoksa istenilen sonuca ulaşamayacaktır. Kodları aşağıda mavi ile gösterilir :
#include<stdio.h>
#include<stdlib.h>
int main()
{ system("color f9");
int i,j,r,m,flag;
printf("\n SOLVING EQUATIONS WITH GAUSS JORDAN ELIMINATION :) [ A*B = C ]\n");
printf("\n Kac Bilinmeyenli bir denklem :");
scanf("%d",&m);
double a[m][m+1],k,b[m];
for(i=0;i<m;i++)
{
for(j=0;j<=m;j++)
{
printf("\na[%d][%d]=",i,j);
scanf("%lf",&a[i][j]);
}
}
for(r=0;r<=m-1;r++)
{
for(i=0;i<m;i++)
{ if(i==r)flag=1;
else flag=0;
if(flag == 0)
{
k=a[i][r]/a[r][r];
for(j=0+r;j<=m;j++)
{
a[i][j] = a[i][j] - a[r][j]*k;
}
}
}
}
for(i=0;i<m;i++)
{
b[i]=a[i][m]/a[i][i];
printf("\n X%d = %lf ",i,b[i]);
}
system("\npause");
return 0;
}