氧气测评
不开O2测评
code:
#include<bits/stdc++.h>
#define N 105
using namespace std;
int n;
double a[N][N];
void Guass()
{
int i,j,k;
double div;
for(j=1;j<=n;j++)
{
k=j;
for(i=j+1;i<=n;i++)
if(fabs(a[i][j])>fabs(a[k][j]))
k=i;
if(k!=j)swap(a[k],a[j]);
if(a[j][j]==0)
{
printf("No Solution");
return;
}
for(i=j+1;i<=n;i++)
{
div=a[i][j]/a[j][j];
for(k=j;k<=n+1;k++)
a[i][k]-=a[j][k]*div;
}
}
for(i=n;i>=1;i--)
{
for(j=i+1;j<=n;j++)
a[i][n+1]-=a[i][j]*a[j][n+1];
a[i][n+1]/=a[i][i];
}
for(i=1;i<=n;i++)
printf("%.2lf\n",a[i][n+1]);
}
int main()
{
int i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n+1;j++)
cin>>a[i][j];
Guass();
return 0;
}