#include<iostream>
#include<iomanip>
#include<fstream>
using namespace std;
#define M 3
void SeqGs(double arr[M][M+1],int count)
{
if (arr[count][count] == 0)
{
cout << "该矩阵无法适用顺序高斯法,截至目前计算结果如下" << endl;
for (int i = 0; i < M; i++)
{
for (int j = 0; j < M + 1; j++)
{
cout << fixed << setprecision(4) << arr[i][j] << " ";
}
cout << endl;
}
}
if (arr[count][count] != 0)
{
for (int i = 1; i < M - count; i++)
{
if (arr[count + i][count] != 0)
{
for (int j = 0; j < M+2; j++)
{
arr[count + 1][j] = arr[count + 1][j] - arr[count + 1][count] / arr[count][count] * arr[count][j];
}
}
}
}
for (int i2 = 0; i2 < M; i2++)
{
for (int j2 = 0; j2 < M + 1; j2++)
{
cout << fixed << setprecision(4) << arr[i2][j2] << " ";
}
cout << endl;
}
cout << endl;
count++;
if (count != M-1)
{
SeqGs(arr, count);
}
}
void PivotGs(double arr[M][M+1],int count)
{
}
int main()
{
int count=0,accept;
double arr[M][M+1]=
{
{0.1,0.1,0.2,0.3},
{1.0,1.1,1.2,1.3},
{2.0,2.1,2.2,2.3},
};
/*for (int i1 = 0; i1 < M; i1++)
{
for (int j1 = 0; j1 < M+1; j1++)
{
arr[i1][j1] = 0;
}
} */ //初始化数组
/*for (int i0 = 0; i0 < M; i0++)
{
for (int j0 = 0; j0 < M+1; j0++)
{
cin>>arr[i0][j0];
}
} */ //输入数据
cout << endl;
SeqGs(arr,count);
PivotGs(arr,count);
return 0;
}
源码发一下