高斯赛德尔迭代法(线性方程组求解)
【问题描述】为求解一个线性方程组,使用高斯赛德尔迭代法,采用欧几里得距离判定是否收敛。精度delta为1E-9,最大迭代次数为20。
【输入形式】在屏幕上依次输入方阵阶数n,系数矩阵A,常数矩阵B和起始点P。
【输出形式】输出实际迭代次数,然后每一行输出一个根。
【样例1输入】
3
4 -1 1
4 -8 1
-2 1 5
7
-21
15
1
2
2
【样例1输出】
10
2
4
3
【样例1说明】输入:第1行为方阵阶数3,第2行至4行为系数矩阵A,第5行至7行为常数矩阵B,第8行至10行为起始点。输出:实际迭代次数为10,然后每行依次输出方程解:x1, x2, x3。
【评分标准】根据输入得到的输出准确
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double A[100][100], b[100];//A系数矩阵 b常数矩阵
int n;
cin >> n;//阶数
double delta = 0.000000001;//误差上限
int num = -1;//计实际迭代次数