使用VC6.0编写n元一次线性方程组的无回代高斯消元法
时间: 2024-05-05 14:22:08 浏览: 117
以下是使用VC6.0编写n元一次线性方程组的无回代高斯消元法的示例代码:
```c++
#include<iostream>
using namespace std;
const double eps = 1e-6; //定义精度为10的-6次方
const int maxn = 100; //定义矩阵最大维数
double a[maxn][maxn], b[maxn], x[maxn];
int n;
int main()
{
//输入矩阵维数n
cout << "请输入矩阵的维数n:" << endl;
cin >> n;
//输入矩阵
cout << "请输入矩阵的系数和常数项:" << endl;
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
{
cin >> a[i][j];
}
cin >> b[i];
}
//高斯消元
for (int k = 1; k <= n; k++)
{
int p = k;
//找到绝对值最大的行
for (int i = k; i <= n; i++)
{
if (fabs(a[i][k]) > fabs(a[p][k]))
{
p = i;
}
}
//交换行
if (p != k)
{
for (int j = k; j <= n; j++)
{
swap(a[p][j], a[k][j]);
}
swap(b[p], b[k]);
}
//判断是否为奇异矩阵
if (fabs(a[k][k]) < eps)
{
cout << "无解或有无穷多解" << endl;
return 0;
}
//消元
for (int i = k + 1; i <= n; i++)
{
double f = a[i][k] / a[k][k];
b[i] -= f * b[k];
for (int j = k + 1; j <= n; j++)
{
a[i][j] -= f * a[k][j];
}
}
}
//回代
for (int i = n; i >= 1; i--)
{
double sum = 0;
for (int j = i + 1; j <= n; j++)
{
sum += a[i][j] * x[j];
}
x[i] = (b[i] - sum) / a[i][i];
}
//输出结果
cout << "解为:" << endl;
for (int i = 1; i <= n; i++)
{
cout << x[i] << " ";
}
cout << endl;
return 0;
}
```
在输入矩阵维数和系数常数项后,程序会对矩阵进行高斯消元,如果矩阵是奇异矩阵,则输出“无解或有无穷多解”,否则进行回代求解得到方程组的解。
阅读全文
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)