您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 设计及方案 > 高中信息技术 算法与程序设计-出租车计价器程序的设计:If语句的教学设计 教科版
1出租车计价器程序的设计——If语句的教学【基本信息】作者课时1课时单位【课标要求】(二)程序设计语言初步1.内容标准(1)理解并掌握一种程序设计语言的基本知识,包括语句、数据类型、变量、常量、表达式、函数。会使用程序设计语言实现选择控制结构。(2)理解模块化程序设计的基本思想,初步掌握其基本方法。(3)初步掌握调试、运行程序的方法。(4)在使用某种面向对象程序设计语言解决问题的过程中,掌握面向对象程序设计的基本思想与方法,熟悉对象、属性、事件、事件驱动等概念并学会运用。2.活动建议(1)选择实例,根据解决问题的要求分析设计算法,恰当地使用选择结构编写源程序,调试并运行该程序,在过程中体验程序设计语言的逻辑特点。【教材分析】本节课的内容是初学程序设计者的一道难关:①语句格式稍显复杂;②功能理解有点难度,也就是不能很好地掌握它的执行流程;③解决问题时,无法建立合适、正确的“条件”。与本节有关的知识点有VBA中的几个常用函数和相关的数学知识。『此处的“教材分析”事实上属于“教学任务分析”(或称“教学目标分析”)的范畴。教学任务分析是教学设计中非常重要的一个环节,它旨在确立教学任务、分析学习结果的类型,以及判断有效学习的过程与条件。此处,作者对教学任务的分析重点放在了教学内容难点的分析上,并且确立了与学习相关的知识点,这就为下一步教学目标的设置奠定了基础。』【教学目标】(1)掌握分支结构的用法与用途(2)掌握IF语句的格式,理解它的功能与执行流程(3)灵活运用IF语句解决一些实际问题(4)既要自主探究,又要学会跟同学合作交流『新课标的课程目标指出,教学应面向知识与技能、过程与方法、情感态度价值观三大目标。因此,教师在设计教学目标的时候也应该围绕这三个方面来进行。本案例教学目标的2前三点显然属于“知识与技能”的范畴,最后一点属于“情感态度价值观”的范畴。而下面的“教法学法”应属于“过程与方法”的范畴,建议能将三点统写在教学目标之中,并按三大目标进行分类,这样可以使得教学目标更为清晰。』【教法学法】教法:任务驱动法、探究式、启发式学法:自主探究、小组交流、个别指导『此处的教法、学法比较混乱,教法中的“探究式”应属于学法的范畴,而学法中的“个别指导”应属于教法的范畴。』【学情分析】省一级重点中学的学生。大部分同学的学习态度良好、求知欲强且基础知识扎实。『对教学对象的分析在教学设计系统中十分的重要,它旨在分析学生的原有知识、技能、态度以及其他与学习相关的心理特征,从而确立教学的起点,即我们通常所说的“备学生”。教学对象的准确分析与把握可以为教学过程与方法的选择与应用提供依据。在编写组评审这篇案例的过程中,就有编委提出,案例的设计似乎对学生的要求太高了,当回过头来看过对教学对象的分析之后就释然了——对重点中学的学生的要求自然要比一般中学要高。这也说明教学案例的普适性是受约于教学对象的,作者对教学对象的分析虽然只有一句话,却保证了该案例的科学性和可操作性。』【教学环境】网络机房,配备Lanstar多媒体教学系统,可实现广播、转播、示范等功能。『在教学设计过程中,许多教师往往忽略了对教学环境的交待。事实上,教学环境是保证教学案例能够得以实施的硬件基础,没有对教学环境的描述,使教学案例有可能成为“空中楼阁”。当然,有经验的教师在阅读教学案例的时候可以自己在脑中构建出支撑案例实施的教学环境,但无论如何,没有教学环境的描述,就会使教学案例缺乏完整性。很高兴地看到,本案例的作者保证了案例的完整性。』【教学过程】(1)创设情景T:“同学们坐过出租车吗?”S:“坐过”,大家异口同声。T:“注意过出租车的计价器吗?”S:“注意过!”T:“好,现在请一位同学描述一下我们当地的出租车是如何计费的。”学生甲:起步价(2公里以内)5元;超出2公里外,每公里1块4。(2)引入课题T:“好,说明大家对计价器是比较熟悉的。那我们能否编一个计价器程序呢?也就是当我们给它一个路程值,让它自动算出车费。”3条件语句NY图1S:表情迟疑的、甚或惴惴的……T:“回答是肯定的!今天的课题就是:编制出租车的计价器程序。”S:表情:舒展的、兴奋的……『此处以课堂实录的形式进行描述,特别是通过对学生表情的记录来表现教师对学生学习状态的观察,通过学生的外在表现来判断学生的学习积极性,让读者读来既获得身临其境的感受,又体验了一种表现性教学评价的方法,值得借鉴。』(3)建立数学模型首先还是请大家将刚才甲同学的描述转化为数学语言——函数,这一步我们称为建立数学模型。同学们很快写出了以下的分段函数解析式:5x≤2y=1.4×(x-2)+5x>2『这一部分要求学生的数学功底很强,不愧是重点学校的学生。对于大多数学校而言,此处的分段函数解析式可能需要在教师的引导与提示下才能顺利写出,或是由教师直接给出后进行分析,从而提高课堂效率,各位老师可以看情况而定。』师生一起分析:要解决以上这个问题,我们的程序应有以下的功能:输入一个数;若该数小于等于2,则输出车费5元;若该数大于2,则车费按1.4×(x-2)+5计算再输出.大家已经会用输入语句与输出语句,那以上的分析中还有一处是大家不知道的,那就是判断,这就是今天我们要学的内容——IF语句。『在学生建立数学模型后,教师又引导学生分析总结出解决问题的伪代码,并以此引入新知的学习。这样的过程是严格按照“计算机解决问题的基本过程”来进行的,也就是在教学的过程中,潜移默化地训练学生用计算机解决问题的方法。从课标的要求出发,每一节程序设计课都应该贯彻这样的理念,使学生在整个课程完成时,自然地养成编程解决问题的良好习惯。』(4)IF语句格式功能介绍、示范(一)简单IF语句格式:IF条件then语句对应的流程图如图1所示,并通过一个实例来说明它的格式与功能及注意事项。例1:判断一个考试成绩,若大于等于60,则输出“Pass!”主要代码为:inputbox(“请输入一个成绩:”,score)ifscore=60thenmsgbox(“Pass!”)演示并讲解格式方面要注意的地方。在示范讲解过程中有同学问:若输入一个小于60的数,结果会怎样?有这样的提问,说明同学对这条语句还没有弄明白,作为老师要善于捕捉课堂中的信息,并好好的利用它深入剖析该语句的用法,使大家对它有全面正确的理解。所以又多演示几遍,并输入不同情况的数据,让大家观察程序的运行结果并比较、分析原因。大家得出结论:当4输入一个小于60的数之所以没有输出结果是因为我们没有对这种情况做出反应,也就是说对这种情况没做相应的处理。这一点说明很重要,因为有部分同学认为电脑会对各种情况自动做出处理,他(她)不知道电脑的各种功能是人赋予的,其实这就是我们学程序设计的目标之一,让大家对电脑有比较全面的认识。经过演示说明,同学们对IF语句有了更进一步的理解。其时这步操作也是我们编程者对自己所编程序进行检查的必要环节。『此处的教师反思读来发人深省,在一线教师的授课过程中,我们常常醉心于自我的教学设计和流程之中,而忽视学生突如其来的发问。应该说,并不是每一位教师都能对这种突发式的提问做出迅速、恰当的判断与应对,或者是做出应对以后就戛然而止,很少进行反思与总结。事实上,学生的这种发问应该引起教师的足够重视与兴奋,这表明他在思考。而教师的重视应表现在当时的应对与课后的分析两个方面。』(五)“小刀”初试再让同学们自主实践(利用该语句解决上面的问题)。不到5分钟,绝大部分同学调试成功,主要有以下两种形式:inputbox(“请输入路程值:”,s)ifs=2thenmsgbox(5)ifs2thenmsgbox(1.4*(x-2)+5)inputbox(“请输入路程值:”,s)ifs=2thenpay=5ifs2thenpay=1.4*(x-2)+5msgbox(pay)分析交流:两种方法都可以,但第二种感觉思路清晰,程序结构明了,易读,请大家要养成良好的编程习惯。『作者是一名很注意观察课堂并在课后进行分析的教师,这一点在此处再一次得到了证明。一般教师只关注学生有没有正确的解决问题而很少关注学生解决问题的不同形式。此处,作者对学生实践结果的及时总结与分析,达到了他注意培养学生良好编程习惯的目标,同时,由于是学生自主实践的结果,记忆深刻。』提问:同学们有没有发现,这段代码似乎还有点“问题”?同学们议论纷纷。有的说没有;有的说好像有点,但说不出来。提示:存在重复判断。因为给定一个数值,它只会符合一种情况,但是我们的程序现在都对它进行了两次判断,这是浪费计算机资源和降低程序运行效率的做法,If语句还有一种格式能很好地解决这个问题。从而引出复合IF语句。『在已有的实践结果上再设疑,再引导,从而引发学生的深入思考,逻辑严谨,环环紧扣。设计的非常紧凑与合理。同时,在提出问题的过程中,培养学生优化程序设计算法,提高程序运行效率的思想,也就是在向学生传达一个信息,不仅要能够解决问题,而且要尽力找到解决问题的最好方法。』(5)IF语句格式功能介绍、示范(二)复合IF语句格式:IF条件then语句组1Else语句组2Endif条件语句组1NY语句组2图25对应的流程图如图2所示,并再次通过例1的简单变式来说明它的格式与功能及注意事项。『作者很注意与前面的教学内容进行呼应,易于让学生接受新知,并及时与刚获得的新知进行比较。』例2:判断一个考试成绩,若大于等于60,则输出“Pass!”,否则输出“Workhard!”。主要代码为:inputbox(“请输入一个成绩:”,score)ifscore=60thenmsgbox(“Pass!”)elsemsgbox(“Workhard!”)endif由于已有了一点的经验,这次学生很快就明白了。『两个示例是相互联系并步步递进的,在示例一中学生产生的问题,在示例二中及时得到了解决,使学生获得即时的学习愉悦感,进一步激发和维持学生的学习动机,保证课堂的效率。』(6)“小刀”再试再让同学们自主实践(利用该语句解决上面的问题)。不到5分钟,同学们基本上能写出以下代码:inputbox(“请输入路程值:”,s)ifs=2thenpay=5elsepay=1.4*(s-2)+5endifmsgbox(pay)说明大家对该语句的格式与功能已基本掌握。这时,有同学在底下窃窃私语,“我输入一个负数也能得到结果5”;“我输入一个非整数,得到的结果跟实际情况也不符合”……刚才同学们的议论,非常有道理,我们现在的这个程序跟实际还有一些不符合,针对以上同学提的这两个问题,我们能否利用现有的知识对它进一步的完善呢?回答是肯定的!请大家思考、讨论、尝试解决。『刚刚完成的新知传授与训练后,再次通过问题强化新知。不同的是,前面是在教师的带领下完成的,这次给学生充分的“自由”,自己完成。既满足了学生用刚学到的新知解决问题的迫切要求,也锻炼了学生独立思考,解决问题的能力。同时,对学生的积极思考及时给予评价和鼓励,学生们的思考肯定更加活跃同时也体验到了用计算机程序来比较完善地解决一个实际问题的艰辛过程。』(7)完善程序针对问题一,我们经过讨论,得到这样的结论:s应有三种情况(s≤0;0s≤2;s2),而我们在程序中只考虑了两种情况,所以会出现以上的问题,在程序设计时应把第一种情况6条件2语句组1NY语句组3图3条件1语句组2“过滤”,怎么“过滤”?引入IF语句的嵌套格式并简要分析它的执行过程(图3)即可,因为同学已有基础。IF语句的嵌套格式:IF条件1then语句组1ElseIF条件2then语句组2Else语句组3EndifEndif同学自主实践,写出代码:inputbox(“请输入路程值:”,s)ifs=0thenmsgbox(“路程值不能为0或负,请重输!”)elseifs=2thenpay=5elsepay=1.4*(x-2)+5endifmsgbox(pay)endif虽然在这之前已经学过取整等函数,但由于没有实际编程经验,以至不会灵活运用,这是学程序设计的一个通病,所以在教学实践中,
本文标题:高中信息技术 算法与程序设计-出租车计价器程序的设计:If语句的教学设计 教科版
链接地址:https://www.777doc.com/doc-1940124 .html