教学目标:
1.了解这种方法是求方程近似解的一般方法,能利用计算器求精确到0.01的实数解.
2.理解二分法求方程近似解的算法,进一步理解函数与方程的关系. 3. 能根据算法语句与程序框图的知识设计完整的二分法求方程近似解的流程图并写出其伪代码.
4.培养学生利用计算工具的能力. 教学重点:
1.利用二分法求给定精确度的方法近似解. 2.能写出二分法求方程近似解的流程图和伪代码. 教学难点:
1.利用二分法求方程的近似解.
2.二分法求方程近似解的流程图和伪代码. 教学方法:
教学过程:
一、问题情境
在前面一节课中,我们已经学习了一些简单的算法,如不定方程的解、欧几里得辗转相除法求两个正整数的最大公约数等问题,对算法已经有了较为深刻的了解,下面,我们还将通过一个具体的算法案例,继续体会算法的思想.这就是我们本节课所要研究的问题—二分法求方程近似解.
二、学生活动
写出用区间二分法求解方程x3?x?1?0在区间[1,1.5]内的一个近似解(误差不超过0.001)的一个算法.
(1)算法设计思想:
如图,如果估计出方程f(x)?0在某区间[a,b]内有一个根x*,就能用二分法搜索求得符合误差限制c的近似解.
(2)算法步骤可以表示为:
a?b,将区间一分为二; S1 取[a,b]的中点x0?2S2 若f(x0)?0,则x0就是方程的根,否则判断根x*在
开始 x0的左侧还是右侧;
若f(a)f(x)?0,则x*0?(x0,b),以x0代替a; 若f(a)f(x)?0,则x*0?(a,x0),以x0代替b; S3 若|a?b|?c,
计算终止,此时x*?x0,否则转S1.三、建构教学 伪代码1:
Read a,b,c
xa?b0?2 While |a?b|?c And x30?x0?1?0 If (a3?a?1)?(x30?x0?1)<0 Then b?x0 Else a?x0 End If x?b0?a2 End While Print x0
伪代码2:
Read a,b,c
x0?(a?b)2 f(a)?a3?a?1
f(x30)?x0?x0?1
If f(x0)?0 Then GoTo 120
结束 If f(a)f(x0)?0 Then b?x0 Else a?x0 End If
If |a?b|?c Then GoTo 20 Print x0
二分搜索的过程是一个多次重复的过程,故可以用循环结构来处理(代码1),课本解法是采用GoTo语句实现的(代码2).
四、要点归纳与方法小结 本节课学习了以下内容:
1.二分法的算法和用伪代码表示该算法; 2.GoTo语句的使用;
3.解决实际问题的过程:分析-画流程图-写伪代码.