下载后可任意编辑数值分析课程实验报告 《数值分析》课程实验报告 实验名称用二分法和迭代法求方程的根 成绩 一、实验目的 掌握利用二分法以及迭代法求方程近似根的方法,并学会运用 matlab 软件编写程序,求解出方程的根,对迭代法二分法进一步认识并灵活运用。 二、实验内容 比较求方程 50xxe的根,要求精确到小数点后的第 4 位 1.在区间[0,1]内用二分法;2.用迭代法 1/5kxkxe,取初值 00.25x. 三、算法描述 1、二分法:二分法是最简单的求根方法,它是利用连续函数的零点定理,将汗根区间逐次减半缩小,取区间的中点构造收敛点列{}来逼近根 x.2、迭代法:迭代法是一种逐次逼近的方法,其步骤是首先给定一个粗糙的初始值,然后用一个迭代公式反复修正这个值,知道满足要求为止。 四、实验步骤 11、二分法: (1)计算 f(x)在区间[0,1]端点处的值 f(0)和 f(1)的值; (2)计算 f(x)在区间【0,1】的中点(0+1)/2=1/2 处的值 f((a+b)/2); (3)假如函数值 f(1/2)=0,则 1/2 是 f(x)=0 的实根,输出根 x,终止;否则继续转(4)继续做检验。由于 f(1/2)≠0,所以继续做检验。 (4)假如函数值 f(0)*f(1/2)<0,则根在区间[0,1/2]内,这时以 1/2 代表1;否则以 1/2 代表 0;,此时应该用 1/2 代表 1.(5)重复执行(2)(3)(4)步,直到满足题目所要求的精度,算法结束。 22、迭代法 (1)提供迭代初值 25.00x ;(2)计算迭代值)(01xx; (3)检查|01xx| ,若||01xx,则以 1x 代替 0x 转(2)步继续迭代;当||01xx 时 1下载后可任意编辑 终止计算,取作为所求结果。 五、程序 (1)二分法程序: functiony=bisection(fx,xa,xb,n,delta) x=xa;fa=5*x-exp(x); x=xb;fb=5*x-exp(x); disp("[ n xa xb xc fc ]"); fori=1:n xc=(xa+xb)/2;x=xc;fc=5*x-exp(x); X=[i,xa,xb,xc,fc]; disp(X), iffc==0,end iffc*fa<0 xb=xc; elsexa=xc; end if(xb-xa)