📄 312.cpp
字号:
#include <math.h>
#include <iostream.h>
#define n 3
void main()
{
int i,j,k,r,s,p;
double t,max,sum;
double a[3][3]={{2.0,2.0,3.0},{4.0,7.0,7.0},{-2.0,4.0,5.0}};
double x[3],b[3]={3.0,1.0,-7.0};
int P[3]={0,1,2};
for(s=0;s<n;s++)
{for(p=0;p<n;p++)
cout<<a[s][p]<<'\t';
cout<< "b"<<s+1<<"="<<b[s]<<endl;}
cout<<endl;
for(k=0;k<n;k++)
{ r=k;
max=fabs(a[k][k]);
for(i=k;i<n;i++)
{ if(max<fabs(a[i][k]))
{max=fabs(a[i][k]);
r=i;}}
if(max==0)
{cout<<"方程奇异";break;}
if(k!=r)
{for(s=k;s<n;s++)
{t=a[P[r]][s]; a[P[r]][s]=a[P[k]][s]; a[P[k]][s]=t;}
t=b[P[r]]; b[P[r]]=b[P[k]]; b[P[k]]=t;}
for(i=0;i<n;i++)
{for(j=0;j<n;j++) cout<<a[i][j]<<'\t';
cout<<"b"<<i+1<<"="<<b[i]<<endl;}
cout<<endl;
for(i=k+1;i<n;i++)
{a[P[i]][k]=(a[P[i]][k]/a[P[k]][k]);
for(j=k+1;j<n;j++)
{a[P[i]][j]=a[P[i]][j]-a[P[i]][k]*a[P[k]][j];
cout<<a[P[i]][j]<<'\t';}
b[P[i]]=b[P[i]]-a[P[i]][k]*b[P[k]];
cout<< "b"<<P[i]+1<<"="<<b[P[i]]<<endl; }
cout<<endl;
}
x[n-1]=b[P[n-1]]/a[P[n-1]][n-1];
for(i=n-2;i>=0;i--)
{sum=0.0;
for(j=i+1;j<n;j++)
sum=sum+a[P[i]][j]*x[j];
x[i]=(b[P[i]]-sum)/a[P[i]][i];}
for(i=0;i<n;i++)
cout<<"X"<<i+1<<"="<<x[i]<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -