📄 高斯消去法.txt
字号:
#include<iostream>
#include<memory>
using namespace std;
int main()
{
int i,j,n,k;
// float A[n][n],m[n-1],B[n],x[n];
float A[500][500],m[500],B[300],x[300];
while(1)
{
cout<<"请输入矩阵的维数N"<<endl;
cin>>n;
cout<<"请输入一个增广矩阵"<<endl;
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
cin>>A[i][j];
}
cin>>B[i];
}
cout<<" ";
cout<<endl;
for(k=0;k<n-1;k++)
{
for(i=k+1;i<n;i++)
{
m[i]=A[i][k]/A[k][k];
for(j=k;j<n;j++)
{
A[i][j]=A[i][j]-m[i]*A[k][j];
}
B[i]=B[i]-m[i]*B[k];
A[i][k]=0;
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
cout<<A[i][j]<<" ";
cout<<B[i]<<" ";
cout<<endl;
}
cout<<" ";
cout<<endl;
}
float sum=0;
x[n-1]=B[n-1]/A[n-1][n-1];
for(i=n-2;i>=0;i--)
{
for(j=n-1;j>i;j--)
{
sum=sum+A[i][j]*x[j];
}
x[i]=(B[i]-sum)/A[i][i];
sum=0;
}
for(i=0;i<n-1;i++)
{
cout<<"x"<<i+1<<"="<<x[i]<<" "<<endl;
}
cout<<"x"<<n<<"="<<x[n-1]<<endl;
cout<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -