求助啊!!高斯消元法,那个消元公式一直都没整对!!!
#include <iostream>using namespace std;
main()
{float a[4][4],b[4],x[4],max,t,h;
int m=0,i,j,f;
int k,l;
cout<<"输入各行各项系数及Y:"<<endl;
for(i=0;i<4;i++)
{for(j=0;j<4;j++)
cin>>a[i][j];
cin>>b[i];
}
max=a[0][0];
cout<<max<<endl;;
while(m!=3)
{{for(i=m+1,j=m;i<=3;i++)
{while(a[i][j]>max)
max=a[i][j];
f=i;}};
//上面为选主元
//行交换
while(max!=a[m][m])
{for(j=m;j<4;j++)
{h=a[f][j];
a[f][j]=a[m][j];
a[m][j]=h;
}
t=b[f];
b[f]=b[m];
b[m]=t;}
for(i=m+1;i<4;i++)
{{for(j=m;j<4;j++)
a[i][j]=a[i][j]-a[m][j]*(a[i][m]/a[m][m]);}
b[i]=b[i]-b[m]*(a[i][m]/a[m][m]);}
m++;
max=a[m][m];}
x[3]=b[3]/a[3][3];
for(i=2;i>=0;i--)
{for(j=i+1;j>=3;j++)
x[i]=(b[i]-a[i][j]*x[i+1])/a[i][i];}
for(i=0;i<4;i++)
cout<<x[i]<<" ";
return 0;}