高斯定理求线性代数方程java
时间: 2023-11-04 13:05:42 浏览: 26
这里提供一个使用Java实现高斯消元法求解线性代数方程组的简单示例代码:
```java
public class GaussElimination {
// 高斯消元法求解线性代数方程组
public static void solve(double[][] A, double[] b) {
int n = b.length;
// 消元
for (int k = 0; k < n - 1; k++) {
for (int i = k + 1; i < n; i++) {
double factor = A[i][k] / A[k][k];
for (int j = k + 1; j < n; j++) {
A[i][j] -= factor * A[k][j];
}
b[i] -= factor * b[k];
}
}
// 回代
for (int i = n - 1; i >= 0; i--) {
for (int j = i + 1; j < n; j++) {
b[i] -= A[i][j] * b[j];
}
b[i] /= A[i][i];
}
}
public static void main(String[] args) {
double[][] A = {{2, 1, -1}, {3, 2, 1}, {1, -1, 2}};
double[] b = {8, 13, 2};
solve(A, b);
for (int i = 0; i < b.length; i++) {
System.out.println("x" + (i + 1) + " = " + b[i]);
}
}
}
```
这里使用了高斯消元法,首先进行消元,将系数矩阵 $A$ 化为上三角矩阵,然后进行回代求解方程组。输出结果为:
```
x1 = 3.0
x2 = 1.0
x3 = -2.0
```
即方程组的解为 $x_1=3,x_2=1,x_3=-2$。