《计算机数值方法B》实验指导书

}

}

for(j=k+1;j<=n;j++)tmp+=a[k][j]*l[j]; l[k]=(a[k][n+1]-tmp)/a[k][k];

for(i=1;i<=n;i++)printf(\

运行结果如下:

2.000000 2.000000 3.000000 3.000000 4.000000 7.000000 7.000000 1.000000 -2.000000 4.000000 5.000000 -7.000000 l[2][1]=2.000000

2.000000 2.000000 3.000000 3.000000 0.000000 3.000000 1.000000 -5.000000 -2.000000 4.000000 5.000000 -7.000000 l[3][1]=-1.000000

2.000000 2.000000 3.000000 3.000000 0.000000 3.000000 1.000000 -5.000000 0.000000 6.000000 8.000000 -4.000000 l[3][2]=2.000000

2.000000 2.000000 3.000000 3.000000 0.000000 3.000000 1.000000 -5.000000 0.000000 0.000000 6.000000 6.000000 x[1]=2.000000 x[2]=-2.000000 x[3]=1.000000

- 7 -

实验三 线性方程组的迭代解法

【目的与要求】

1.了解雅可比迭代法、高斯-赛德尔迭代法等线性方程组迭代求解的基本方法、基本原理;

2.能够按照工程实际要求,选择适当的算法; 3.通过编写程序,进行算法设计和数值求解。 【实验内容】

使用雅可比迭代法或高斯-赛德尔迭代法对下列方程组进行求解。

?10x1?x2?2x3?7.2???x1?10x2?2x3?8.3 ??x?x?5x?4.2123?【内容提示】

雅可比迭代法的公式如下:

??x???(k?1)in1?(bi??aaiij?1j?iijx(k)j)

i?1,2,?n,k?0,1,2,?高斯-赛德尔迭代法的公式如下:

i?11?(k?1)?[bi??aijx(jk?1)??xiaii?j?1?i?1,2,?n?j?i?1?anijx(jk)]

- 8 -

实验四 代数插值

【目的与要求】

1.了解拉格朗日插值法或牛顿插值法的基本方法、基本原理; 2.通过编写程序,进行算法设计和数值求解。 【实验内容】

使用拉格朗日插值法或牛顿插值法求解:已知f(x)在6个点的函数值如下表所示,运用插值方法,求f(0.596)的近似值。 x f(x)

0.40 0.41075 0.55 0.57815 0.65 0.69675 0.80 0.88811 0.90 1.02652 1.05 1.25386 【内容提示】

拉格朗日基函数为:

li(x)?(x?x0)(x?x1)?(x?xi?1)(x?xi?1)?(x?xn)(xi?x0)(xi?x1)?(xi?xi?1)(xi?xi?1)?(xi?xn)

i?0,1,?,n拉格朗日插值多项式为:

Ln(x)?y0l0(x)?y1l1(x)???ynln(x)??yili(x)

i?0n

提醒: 每个实验结束后,应整理出实验报告,实验报告模版到学校教务处网站下载。

- 9 -

联系客服:779662525#qq.com(#替换为@)