列主元高斯消元法c++代码
时间: 2023-11-05 07:06:04 浏览: 57
以下是列主元高斯消元法的C++代码:
```
#include <iostream>
#include <cmath>
using namespace std;
const int MAXN = 100;
const double eps = 1e-6;
int n;
double a[MAXN][MAXN], b[MAXN];
void Gauss() {
for (int k = 1; k <= n; k++) {
int p = k;
for (int i = k + 1; i <= n; i++) {
if (fabs(a[i][k]) > fabs(a[p][k])) {
p = i;
}
}
if (fabs(a[p][k]) < eps) {
cout << "No unique solution" << endl;
return;
}
if (p != k) {
swap(a[p], a[k]);
swap(b[p], b[k]);
}
for (int i = k + 1; i <= n; i++) {
double f = a[i][k] / a[k][k];
for (int j = k + 1; j <= n; j++) {
a[i][j] -= f * a[k][j];
}
b[i] -= f * b[k];
}
}
for (int i = n; i >= 1; i--) {
for (int j = i + 1; j <= n; j++) {
b[i] -= a[i][j] * b[j];
}
b[i] /= a[i][i];
}
for (int i = 1; i <= n; i++) {
cout << "x" << i << " = " << b[i] << endl;
}
}
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
cin >> a[i][j];
}
cin >> b[i];
}
Gauss();
return 0;
}
```
相关推荐
![](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)