Pagini recente » Cod sursa (job #805338) | Cod sursa (job #2986797) | Cod sursa (job #3229578) | Cod sursa (job #2804365) | Cod sursa (job #635233)
Cod sursa(job #635233)
#include <stdio.h>
#define N 310
double a[N][N],x,sol[N];
int n,i,j,m,k;
int main () {
freopen ("gauss.in","r",stdin);
freopen ("gauss.out","w",stdout);
scanf ("%d %d",&n,&m);
for (i=0; i<n; i++)
for (j=0; j<=n; j++)
scanf ("%lf",&a[i][j]);
for (i=0; i<n-1; i++) {
for (j=i+1; j<n; j++) {
x=-a[j][i]/a[i][i];
for (k=i; k<=n; k++)
a[j][k]+=a[i][k]*x;
}
}
/*for (i=0; i<n; i++) {
for (j=0; j<=n; j++) printf ("%.3lf\t",a[i][j]);
printf ("\n");
}*/
for (i=n-1; i>=0; i--) {
x=0;
for (j=i+1; j<n; j++) x+=a[i][j]*sol[j];
sol[i]=(a[i][n]-x)/a[i][i];
}
for (i=0; i<n; i++) printf ("%.8lf ",sol[i]);
fclose (stdin); fclose (stdout);
return 0;
}