}
else
{
if(n
15
3
10
3
2
-0.347296
1.879385
-0.347296
1.879385
1.879385
迭
代
次
数
收
敛
数
如果收敛的话,分别带入 *
3 =-153209,精度精度
=0.000005,收敛的话收敛数和迭代次数如上表。在试验中还可以限制它的迭
代次数,没限制和限制的运行结果如下:
1x =1.8793, x *
2 =-0.34727, x *
[指导教师批改意见]
第 4页
实验二
一、课题名称
解线性方程组的直接方法
二、目的和意义
1、通过该实验课程,体会模块化结构程序设计方法的优点;
2、运用所学的计算方法,解决各类线性方程组的直接算法;
3、提高分析和解决问题的能力;
4、通过对三角线性方程组的解法,体会稀疏线性方程组解法的特点。
二、问题的提出
-3 -1
2
-5 -3
6
-2 -1
2
5
-2 1
6
-1
-8 7
-1 3
给出以下线性方程组,用高斯顺序消去法求解。
2
4
6
8
3
4
-1
0
6
-4 2
1
8
6
0
-4
2
16 10 -11 -9 17
4
-7 13
0
0
0
0
0
1
3
4
9
3
2
5
-3
0
1
2 2
12
4
-1
3
1
5
2
3
7
7
2
34
9
-3 -24
0
0
1
0
0
-1
1
-1
3
-3
6
2
3
5
-1
2
0
2
-8 6
x1
x2
x3
x4
x5
x6
x7
x8
x9
x10
2
-1 8
6
0
=
5
12
3
2
3
46
13
38
19
-21
三、计算公式
≠0,对 k=1,2,……,n-1 计算。
)
(
kk
(1)消元过程:
设a k
m
ik
(
k
a
ij
(
b
i
)(
k
a
ik
)(
k
a
kk
)(
k
a
ij
)(
k
b
i
k
i
,
j
)1
)1
k
)(
k
am
ik
kj
)(
k
bm
ik
k
,1
,2
k
(2)回代过程:
,
n
第 5页
x
n
)(
n
b
n
)(
n
a
nn
)(
i
b
i
x
i
i
n
n
j
)(
i
xa
ij
1
j
i
)(
i
a
ii
,1
n
,2
1,
四、结构程序设计
Gauss.dat
10
4 2 -3 -1 2 1 0 0 0 0
8 6 -5 -3 6 5 0 1 0 0
4 2 -2 -1 3 2 -1 0 3 1
0 -2 1 5 -1 3 -1 1 9 4
-4 2 6 -1 6 7 -3 3 2 3
8 6 -8 5 7 17 2 6 -3 5
0 2 -1 3 -4 2 5 3 0 1
16 10 -11 -9 17 34 2 -1 2 2
4 6 2 -7 13 9 2 0 12 4
0 0 -1 8 -3 -24 -8 6 3 -1
Gauss.c
#include
main()
{
FILE *f;
double a[15][15];
double b[15];
float r,s;
double x[15];
int i,j,k,n;
f=fopen("gauss.dat","r");
fscanf(f,"%d",&n);
for(i=0;i