已知x5+x4+2x3-5x2+3x-1=0在区间[0,1]上有唯一的实数根.试求出根的近似值.要求:
(1)用伪代码表示算法;
(2)根的误差的绝对值要小于0.005.
解: S1 a←0; S2 b←1; S3 c←0.005; S4 x0←(a+b)/2; S5 f(a)←a5+a4+2a3-5a2+3a-1; S6 f(x0)←x05+x04+2x03-5x02+3x0-1; S7 If f(x0)=0 Then GoTo 140; S8 If f(a)f(x0)<0 Then; S9 b←x0; S10 Else; S11 a←x0; S12 End If; S13 If|a-b|≥c ThenGoTo 4; S14 Print x0. 思路分析:回顾二分法解方程的过程,并假设所求近似值与精确解的差的绝对值不超过0.005.这就是循环语句的终止条件. 方法归纳:对于给定的一元方程f(x)=0,要求精确度为ε的近似解的算法如下: 1.确定有解区间[a,b](f(a)·f(b)<0). 2.取[a,b]的中点. 3.计算函数f(x)在中点处的函数值f(). 4.判断函数值f()是否为0. (1)如果为0,x=就是方程的解,问题就得到了解决. (2)如果函数值f()不为0,则分下列两种情况: ①若f(a)·f()<0,则确定新的有解区间为(a,); ②若f(a)·f()>0,则确定新的有解区间为(,b). 5.判断新的有解区间的长度是否小于误差ε: (1)如果新的有解区间长度大于误差ε,则在新的有解区间的基础上重复上述步骤; (2)如果新的有解区间长度小于或等于误差ε,则取新的有解区间的中点为方程的近似解. 深化升华 (1)循环变量和初始条件 设两个变量a,b,分别表示有解区间的左端点和右端点,初始值分别为0和1. (2)循环体 算法中反复执行的部分是判断函数值f()是否为0: ①如果f()=0,输出. ②如果f()不为0,则判断f(a)·f()的符号: (ⅰ)如果f(a)·f()<0,b←; (ⅱ)如果f(a)·f()>0,a←. (3)终止条件 ①f()=0; ②b-a<ε. |
湖北省互联网违法和不良信息举报平台 | 网上有害信息举报专区 | 电信诈骗举报专区 | 涉历史虚无主义有害信息举报专区 | 涉企侵权举报专区
违法和不良信息举报电话:027-86699610 举报邮箱:58377363@163.com