数值分析设计实验实验报告
课题一 迭代格式的比较
一、问题提出
设方程或x*2
f
3- 3x –1=0 有三个实根 x
*1=1.8793 ,
*x*,x*2=-0.34727 3=-1.53209现采用下面三种不同计算格式,求 f(x)=0的根 x1
3x?1 x2x3?1
2、 x =
3
3、 x = 33x?1
1、 x =
二、要求
1、编制一个程序进行运算,最后打印出每种迭代格式的敛散情况;
2、用事后误差估计xk?1?xk??来
3、初始值的选取对迭代收敛有何影响; 4、分析迭代收敛和发散的原因。 三、目的和意义
1、通过实验进一步了解方程求根的算法; 2、认识选择计算格式的重要性; 3、掌握迭代算法和精度控制;
4、明确迭代收敛性与初值选取的关系。 四、程序设计流程图
开始初始化初值x0最大迭代次数初始迭代次数调用f(x)X=f(x0)YFabs(x-x0) 结束 五、源程序代码 #include float x1,x2,x3,q,a,z,p,e=0.00001; x1=-1.0000;x2=-1.0000;x3=1.0000; int i,y=3; printf(\ q=x1-p;a=x2-p;z=x3-p; for(i=1;i<=60;i++) { if(q { p=x1; x1=(3*x1+1)/(x1*x1); printf(\ q=x1-p; }