用解析法设计程序

上传人:油条 文档编号:27334765 上传时间:2018-01-09 格式:DOC 页数:15 大小:196KB
返回 下载 相关 举报
用解析法设计程序_第1页
第1页 / 共15页
用解析法设计程序_第2页
第2页 / 共15页
用解析法设计程序_第3页
第3页 / 共15页
用解析法设计程序_第4页
第4页 / 共15页
用解析法设计程序_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《用解析法设计程序》由会员分享,可在线阅读,更多相关《用解析法设计程序(15页珍藏版)》请在金锄头文库上搜索。

1、一、 教学目标1、 知识与技能知识目标:1对“算法”的概念作进一步的了解。2了解解析算法的特点。3通过实例的学习,掌握解析算法的各环节。4掌握运用各学科知识解决实际问题的方法。5掌握从解决问题的解析式到设计相应程序的窗体和程序代码的方法。6通过实践掌握用解析算法编写程序代码的一些技巧。7能关注使用解析算法解决问题的意义。8在综合应用各种知识解决问题时提高自己的整体素质。9能运用学过的窗体和控件的基本知识是进行可视化编程。善于通过交流设计出简洁好用的界面。技能目标能够用解析法分析简单问题,设计算法,编写程序求解问题。2、 方法与过程以学生生活中最熟悉的测量物体、楼房的高度入手,引出有关测量的话题

2、。通过测量不可到达底部的物体的高度的问题,导出了解析算法的基本概念,然后通过计算电阻和计算小球弹跳路程的两个例题,叙述了解析算法应用的两个重要手段:通过列出方程(或方程组)然后求解和用重复结构对解析式进行计算。进一步提高学生对解析算法和可以通过多种方法设计程序的理解。3、 情感态度和价值观结合高中生想象具有较强的随意性、更富于现实性的身心发展特点,综合反映出提升学生在各个领域的计算机应用水平,提高学生交流和讨论,自己总结获得新的知识能力,培养学生正确寻找解决问题的方法和正确的学习方法。二、 重点难点1、 教学重点(1) 理解解析法的基本概念。要培养学生善于综合运用数学、物理、化学等各学科的知识

3、和思考方法,寻找问题中各要素之间的关系,导出解决问题的解析式或列出相关的方程,然后设计程序求解。(2) 根据算法写出程序代码并且调试程序求得问题的正确解答的能力。当算法确定之后,应当能够熟练地根据算法写出程序代码,并且通过调试程序发现并改正错误,得出正确的解答。(3) 根据问题的特点,找到系统提供的资源(如各种数据类型、内部函数等等),简化问题的求解过程。2、 教学难点(1) 解析式的导出或方程(组)的列出并求解。这些工作要求对问题所涉及的领域有比较深的认识,它的困难是外在的,是由问题的性质决定的。(2) 算法的合理设计。不论是使用重复结构还是寻找的运算顺序,对于经验不足的初学者是有困难的,特

4、别是计算过程中可能会遇到计算误差的积累影响运行结果的情况,需要有较多的编程经验才能加以解决。(3) VB 的数据类型。三、 教学环境1、 教材处理教材选自广东省普通高中信息技术选修一:算法与程序设计第四章第一节,本节从古埃及测量金字塔高度故事引入,引出有关测量的话题。通过一道测量不可到达底部的物体的高度的问题,导出了解析算法的基本概念,然后通过计算小球弹跳路程的计算,和电阻计算两个例题,叙述了解析算法应用的两个重要手段:用重复结构对解析式进行计算和通过列出方程(或方程组)然后求解。在此基础上教材安排了两个实践探究活动,进一步提高学生对解析算法的理解。教材经处理后,以学生生活中最熟悉的测量物体、

5、楼房的高度入手,引出有关测量的话题。通过一道测量不可到达底部的物体的高度的问题,导出了解析算法的基本概念,然后通过计算电阻和计算小球弹跳路程的两个例题,叙述了解析算法应用的两个重要手段:通过列出方程( 或方程组)然后求解和用重复结构对解析式进行计算。进一步提高学生对解析算法和可以通过多种方法设计程序的理解。教学方法是以实现“教引放收”的教学过程,体现“问题情景式任务驱动”的教学方法。任务驱动强调让学生在密切联系学习、生活和社会实际的有意义的“任务”情景中,通过完成任务来学习知识、获得技能、形成能力、内化伦理。采用任务驱动、讲解、分析归纳、探究、实践操作和学生自主学习相结合的学习方法。2、 预备

6、知识学生已掌握了用计算机解决问题的过程,掌握了 VB 界面设计的相关内容,掌握了程序设计的基础。3、 硬件要求建议本节课在计算机机房或多媒体电脑教室中完成,最好有广播教学系统或投影仪,为拓展学习,学生机应允许上互联网。4、 所需软件学生机要安装 VB6.0 或以上版本。5、 所需课时2 课时(90 分钟)四、 教学过程导入:同学们,我想所有的同学都会测量物体和楼房的垂直高度,但如下的问题会测量吗?4.1.1 用解析法求解问题的基本过程1、测量高度问题的求解问题:4.1:如图 41 所示,MN 是竖直于地面的物体,其底部 N 不可到达。为了测量 MN 的高度,在地面上选取一条与 MN 在同一平面

7、的水平线线段 AB 为基线,测得 AB 的长为 a=20 米,在 A 点向 M 点张望的仰角 A38.4 0,在 B 点向 M 点张望的仰角 B22.8 0。试设计程序计算高度 MN。图 41(1) 测量物体高度示意图(1) 分析问题(以下内容由老师正确引导,学生小组协作完成)我们不可能直接求出物体的高度。但我们可以利用所学的知识(三角函数)来完成该工作。在直角三角形 ANM 中可以得到:tanA0MN/AN即:ANMN/ tan A 0在直角三角形 BNM 中可以得到:tan B0MN/BN即:BNMN/ tan B0所以:ABBNANMN/tan B 0MN/tan A 0 MN(1/ t

8、an B01/tan A 0 )(2) 设计算法 设计输入输出界面,从三个文本框中输入基线长 a ,仰角 A0 用 Alpha 代替、B 0用 Bata 代替 计算 tan A0 的倒数(用 COTA 表示) ,即COTA1/tan ( A03.14159/180 ) ; 计算 tan B0 的倒数(用 COTB 表示) ,即COTB1/tan(B 03.14159/180) ; 计算 a/(COTBCOTA) ; 输出结果(3) 编写程序设计窗体如图 42图 41(2) 测量高度问题程序的窗口对象名 属性名 属性值 功能 名称 label1Label2Label3Label4标签的名称 标签

9、Caption 基线长 a=仰角 =仰角 =被测物体高度=设置标签显示的内容 Enabled Text1 textboxText2 textbox Text3 textbox Text4 textbox文本框的名称文本框text 全部设置成空 设置 text 的值 名称 command1 命令按钮的名称 按钮 Caption 计算设置命令按钮显示的内容 表 41(1) 对象属性表参考程序 41:Private Sub Command1_Click()a = Val(Text1.Text)Alpha = Val(Text2.Text)bata = Val(Text3.Text) pi = 3.1

10、4159265COTA = 1 / Tan(Alpha * pi / 180)COTB = 1 / Tan(bata * pi / 180)MN = a / (COTB - COTA)Text4.Text = MNEnd Sub(4) 调试程序(运行源程序)图 41(3) 参考程序 41 运行的结果(5) 检验结果探究:在本问题里,如果输入的两个仰角相等,或其中一个仰角是 900,都会导致程序非正常结束。如果,甚至会使输出的结果是负数!请讨论一下使用者输入数据时比较常见的错误会有哪些?我们在程序中可以怎样防范?2、总结解析法的基本概念通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号

11、来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法称为解析法。4.1.2用解析法求解问题的实践1、电阻计算问题问题:4-2:在一家工厂作社会调查时,张军了解到他们正在进行一项技术改革,其中有一个环节是改变一个局部电路的电阻以观察对整个器件的影响。这个局部电路由并联的两个分支组成(如图 45),其中一个分支的等效电阻是 R1,而另一个分支的等效电阻为R2。因为电路特性的需要,必须保持 R2R 12000。工厂技术人员希望由这两个分支并联的电路的总电阻 R 分别取为 1000、2000 100000。这样得多次计算 R1 和 R2 的电阻值,而这种计算每次都很麻烦。于是张军就编

12、制了一个程序帮他们解决问题,只要输入总电阻 R 的值,程序就计算出相应的 R1 和 R2 的值。张军因此受到了技术员的称赞。你也能编出这个程序吗?R1R2图 41(4) 并联电路示意图(1)分析问题。 (老师引导,学生完成)张军是这样想的:根据并联电路电阻的计算公式,1R=IR1 十 1R2,以 R2=R12000 代入,即得:1/R=1/R1+1/(R1+2000)以 R1 为未知量、R 为已知量,通过去分母整理可以得到关于 R1 的方程:R12+(20002*R)*R12000*R=0,解这个关于 R1 的二次方程即可解决问题。(2)设计算法。 (老师引导,学生完成)根据上述的分析,张军写

13、出解决问题的算法如下:输入总电阻 R;计算方程 R12+(20002R)*R12000*R=0 的判别式=(2000-2*R)2+8000*R;如果 D0 转,否则转;计算出方程 R12+(20002*R)*R 12000*R=0 的根 R1=(2*R-2000+sqr(D)2,(R 1=(2*R-2000+sqr(D)2 肯定是增根,不必计算);把 R1 和 R1+2000 在两个文本框内输出,转 ;输出方程没有解的信息“不可能” ;结束。(3)编写程序。用文本框输入总电阻值,用两个文本框分别输出 R1 和 R2 的值,用 3 个标签框对这些文本框作说明。另外设一个命令按钮触发程序执行,如图

14、 4-6 所示。标签 1标签 2标签 3文本框 1文本框 3文本框 2命令按钮 图 41(5) 电阻设计问题的窗体设计图对象名 属性名 属性值 功能 名称 label1Label2Label3标签的名称 标签Caption总电阻 R=R1=R2=设置标签显示的内容 EnabledText1 textboxText2 textboxText3 textbox文本框的名称文本框text 全部设置成空 设置 text 的值 名称 command1 命令按钮的名称 按钮 Caption 计算设置命令按钮显示的内容 表 41(2) 对象属性表先设计好电阻计算问题的窗口,再根据算法写出程序代码:(其中带下

15、划线的部分由学生讨论完成)Private Sub Command1_Click()R = Val(Text1.Text)L = 2000 - 2 * RD = L * L + 4 * 2000 * RIf D = 0 ThenR1 = (-L + Sqr(D) / 2Text2.Text = R1Text3.Text = R1 + 2000ElseText2.Text = 不可能Text3.Text = 不可能End IfEnd Sub(4)调试程序图 41(6) 电阻计算问题解答示意图(5)检测结果小结:用解析法求解问题,有时需要根据问题列出方程,用解方程的方法得到答案。例如:X 5+X3-2*X-9=0 就没有现成的求根公式可用,这时就需要用数值逼近的方法求解。新课:(本节第二课时)导入:复习解析法的概念:通过分析问题中各要素之间的关系,用最简练的语言或形式化的符号来表达它们的关系,得出解决问题所需的表达式,然后设计程序求解问题的方法称为解析法。2、小球弹跳问题问题:43:小球从 10 米高处自由下落,每次弹起的高度是下落高度的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号