1、高考资源网,你身边的高考专家,算法案例3,知识回顾:,用二分法求方程 f(x)=0(或g(x)=h(x))近似解的基本步骤:,1、寻找解所在区间,(1)图象法,先画出y= f(x)图象,观察图象与x轴的交点横坐标所处的范围;,或画出y=g(x)和y=h(x)的图象,观察两图象的交点横坐标的范围。,(2)函数法,把方程均转换为 f(x)=0的形式,再利用函数y=f(x)的有关性质(如单调性)来判断解所在的区间及解的个数。,2、不断二分解所在的区间,若,(3)若 ,,对(1)、(2)两种情形再继续二分解所在的区间.,(1)若 ,,(2)若 ,,由,,则,由,,则,则,3、根据精确度得出近似解,当
2、,且m, n根据精确度得到的近似值均为同一个值P时,则x1P ,即求得近似解。,例1 用二分法求方程x22x10的近似解(精确到0.1),首先画出函数f(x)x22x1的图象,从图象上可以发现: 方程x22x10的一个根x1在区间(1,0)内,另一个根x2在区间(2,3)内,据函数图象,我们发现: f(2)10,即f(2)f(3)0,即f(2)f(2.5)0,故近似解在区间(2,2.5)内,算法应用案例:,通过依次取区间中点的方法,将根所在的区间逐步缩小,并列出表格:,直到区间两个端点值精确到0.1时的近似值都是2.4,所以方程的一个近似解为2.4,注:由于确定近似值的方法不太方便,因此用计算
3、机实现二分法时,常常不是给出精度,而是给出误差范围!,问题:如果方程f(x)0在某区间a,b内有一个根,如何利用二分法搜索符合误差限制c的近似解?,S1 取a,b的中点 x0 ,将区间一分为二;,S2 若f(x0)0,则x0就是方程的根,转S4, 否则当f(a)f(x0)0,则x(a, x0),用x0代替b, 否则用x0代替a;,S3 若|ab|不小于c,转S1;,S4 输出x0 .,问题:写出用区间二分法求方程x3x10在区间1,1.5内的一个近似解(误差不超过0.001)的一个算法,a1 b1.5 c0.001 Do x0(ab)/2 f(a)a3a1 f(x0)x03x01 If f(x
4、0)0 Then End Do If f(a)f(x0) 0 Then bx0 Else ax0 End If Until |ab|c End Do Print x0,若是,则m为所求;,探究:画出用二分法求方程x2-2=0的近似根(精确度为0.005)的程序框图.,算法分析:,第一步:令f(x)=x2-2.,因为f(1)0,所以设a=1,b=2.,第二步:令,判断f(m)是否为0.,第四步:判断|a-b|是否成立?若是,则a或b为满足条件的近似根;若否,则返回第二步.,否,是,是,否,程序框图,开始,f(x)x2-2,输入精确度和初值a,b,f(m)=0?,a m,否,b m,|a-b|?,1,2,2,输出a和b,结束,输出m,3,1,3,是,例2 编写一个求 的近似值的算法,要求精确度不超过0.0001,写出其伪代码.,分析:转化为求方程的近似解问题.,