您好, 访客   登录/注册

《条件语句》教学设计

来源:用户上传      作者:

  ● 教材分析
  《条件语句》是江苏凤凰科学技术出版社出版的《初中信息技术》八年级第4章第5节的第一个知识点。在此之前,学生已学习了算法的概念,用“画程”软件画流程图,输入、输出语句和赋值语句,这些为过渡到本节课的学习起着铺垫作用。本节课的主要内容为两种条件语句的流程图、格式以及用法。
  ● 学情分析
  本节课的教学对象是初二年级的学生,这个年龄段的学生思维活跃,已经具有一定的逻辑思维能力。由于刚刚接触程序设计不久,一些学生对掌握枯燥的语句格式、用法、画流程并不感兴趣,因此本节课利用“猜币”这个小程序来吸引学生的注意力。
  ● 教学目标
  知识与技能目标:通过实例正确理解条件语句的概念、流程图、格式、用法;能初步用条件语句设计算法,进一步体会算法的基本思想,学习有條理地、清晰地表达解决问题的步骤,提高逻辑思维能力。
  过程与方法目标:通过实例,发展对解决具体问题的过程与步骤进行分析的能力;通过探索、画流程图、编写程序以解决具体问题的过程,发展应用算法的能力。
  情感态度与价值观目标:能通过具体实例,感受和体会算法思想在解决具体问题中的意义,进一步体会算法思想的重要性,体验算法的有效性;在编写程序解决问题的过程中,逐步养成扎实严谨的科学态度。
  行为与创新目标:运用条件语句进行创意编程,以解决现实生活中遇到的问题。
  ● 教学重难点
  教学重点:条件语句的结构和用法。
  教学难点:将流程图中的条件结构转换为条件语句组成的程序。
  ● 课时安排
  1课时。
  ● 教学方法与手段
  问题导向式教学法、任务驱动法。
  ● 教学准备
  网络机房、教学课件、半成品小程序、学习任务单。
  ● 教学过程
  1.游戏导入
  教师向学生展示“猜币”程序,邀请学生参与这一游戏,查看猜币的结果(如图1)。
  师:为什么我们每次猜币都会输呢?程序是怎么实现的呢?你能用自然语言来描述吗?
  生:如果我猜是正面,计算机掷币的结果就是反面,如果我猜是反面,计算机掷币的结果就是正面,因此我们每次猜币都错了。
  师:刚刚大家在用自然语言描述的时候,都用了“如果……就……”“如果……那么……”之类的判断语句,这些语句翻译成英文是什么呢?
  生:if……then……
  设计意图:通过小游戏,吸引学生的注意力,并让学生发现参与游戏的结果都是猜输,从而引发学生思考,利用自然语言的描述顺利引出条件语句。
  2.新知学习
  师:一起来看一下程序代码,程序中多次出现了什么语句结构?看看课件里用红色圆框框出的英文都是什么?
  生:if……then……
  教师带领学生分析语句。
  学生总结得出:程序的思路是,如果我们猜正面,那么计算机就掷币为反面,如果我们猜反面,那么计算机就掷币为正面,所以我们必败!
  教师引出条件语句的定义:给定一个判断条件,并在程序执行过程中判断该条件是否成立,根据判断结果执行不同的操作。
  师:请同学们结合现在看到的程序代码,在Flash动画中拖放出语句的语法格式(如图2)。
  学生在Flash动画中拖放出语句的语法格式。
  教师引入条件语句的一种格式:
  If<条件>Then<程序段A>
  师:通过分析,大家能不能把程序改成必胜的结果呢?
  学生相互讨论,形成思路。
  师:通过“必败”和“必胜”的“猜币”程序,可以发现这其实是程序中早已设定好的,跟运气毫无关系,我们能不能自己设计出一个计算机掷币结果随机的“公正版”“猜币”程序?大家可以将自己的思路用流程图来体现。[教师适当介绍一下Randomize及n=Int(2*Rnd)]
  部分学生完成流程图后,教师请一位学生在黑板上用刚刚学过的if……then……语句格式编写程序中的判断部分。
  大部分学生完成后,提示学生对比黑板上学生编写的判断语句格式和“画程”软件中“代码窗口”内判断语句的格式有什么区别。
  学生发现和自己刚刚所学的条件语句格式不一样,由此引入条件语句的另一种格式:
  If<条件>Then
  <程序段A>
  Else
  <程序段B>
  End If
  学生利用Flash动画拖拽出第二种语句的格式。
  设计意图:通过观察程序代码,让学生发现“必败”的真正原因是计算机进行了程序设定,由此引出如何才能让每次猜币的结果都是“必胜”,并再次过渡到“公正版”程序的编写,层层递进。在这个过程中,通过流程图让学生发现条件语句的第二种格式,通过思考两种格式的区别,更加清晰地了解条件语句。
  3.总结格式
  师:请大家思考一下,条件语句的两种格式有什么区别?
  学生思考,教师引导学生总结。
  (1)单行格式的If语句。
  单行格式的If语句可判断一个或多个条件的成立与否,仅在条件成立时执行特定程序段,条件不成立时则跳出当前语句继续执行下一行代码,格式如下:
  If<条件>Then<程序段A>[Else<程序段B>]
  (2)多行格式的If语句。
  在条件成立或不成立时都需要执行对应的程序段,格式如下:
  If<条件>Then   <程序段A>
  Else
  <程序段B>
  End If
  教师引导学生举例说明条件语句在现实生活中的应用(用声音控制灯的亮灭、感应水龙头……),通过利用条件语句解决现实问题,激发学生今后学习编程的兴趣。
  设计意图:通过两种格式条件语句的对比,让学生能够更加清晰地了解两种格式条件语句的区别、适用场合、在现实生活中的应用,强化学生的认知。
  4.算法的优化
  师:如果我输入的值不是1和0这两个数,猜币的结果会怎样?
  生:都是输出“猜错了”。
  师:怎么解决这个问题呢?
  生:在输入一个值后,再加一个判断语句,判断值是不是0或1,如果不是,就提示用户重新输入。
  师:很好!在编程过程中,需要综合考虑各种可能的情况,不断优化程序,减少漏洞。
  设计意图:通过提出新问题让学生去思考,这样的优化过程,可以提高学生的思维品质。教师利用问题引导学生去思考算法的优化,不仅可以帮助学生梳理思维过程,养成思维习惯,长此以往,还可以提高学生的学习能力,使学生的思维品质得到一定程度的提高。
  5.自主探究
  完成半成品程序:判断任意输入的整数是奇数还是偶数(用两种格式)。
  要求:
  (1)先画流程图,可以结合“画程”软件中的“单步运行”按钮,检查流程图是否正确(如上页图3、图4)。
  (2)完成半成品程序,可以参考“画程”软件中的“代码窗口”完成程序填充(如图5、图6)。
  (3)完成流程图和程序填充后,小组讨论总结操作中遇到了什么问题,是如何解决的,有什么问题没有解决。
  学生编写完程序之后,教师展示几个失败的案例,分析其失败的原因,如语句格式错误(没有空格、忘记End If)、逻辑表达式错误等,引起学生注意,加深学生印象,提醒学生注意条件语句和逻辑运算使用时的注意事项。
  设计意图:通过“画程”软件中的“单步运行”功能,可以使学生更加清晰地了解程序运行的每一个过程,同时通过“代码窗口”的程序作为完成程序填充的参考,帮助学生体验算法实现后的成功感,增强其学习程序设计的自信心。
  6.拓展练习
  教师提供程序半成品,让学生在以下3个程序中任选其中一个进行编程。
  (1)完善程序,输出两个不相等的实数a、b的最大值(用两种格式)。
  (2)输入儿童身高,判断儿童乘坐火车时的购票情况,判断条件如下:
  若身高不超过1.1m,则无须购票;
  若身高超过1.1m、不超过1.4m,应买半票;
  若身高超过1.4m,应买全票。
  (3)将考试分数转换为等级,规则如下:
  输入一个百分制分数i([0,100]间的整数),输出转换得到的等级grade。
  i      grade
  [85,100]     "A"
  [75,85)      "B"
  [60,75)      "C"
  [0,60)       "D"
  学生完成后,教师展示一些优秀作品和一些有标志性错误的程序,通过对优秀作品的欣赏和标志性错误的反思,加深学生对条件语句的理解和掌握。
  设计意图:教师提供3个半成品程序,让学生选择自己感兴趣的题目进行编程,通过展示共性错误,让学生发现问题所在,从而加深学生对条件语句格式的掌握。
  7.总结与拓展
  教师引导学生总结条件语句的格式、关系表达式、逻辑表达式及使用时的注意事项。
  ● 教学反思
  在本节课的教学过程中,我利用了教材中的“猜币”程序作为导入的小游戏,并对教材中的程序进行简化——不显示计算机掷币后的文字信息,仅以图片代替,由此吸引学生的注意力,并通过“必输”“必胜”“公正版”三个环节的层层递进,引入条件语句的两种格式。其中,应用“画程”软件及其自带的“单步运行”功能,帮助学生更加清晰地了解程序运行的每一步结果,并用“画程”软件中“代码窗口”的代码作为学生完成半成品编程的参考,帮助学生体验算法实现后的成功感,增强其学习程序设计的自信心。
  根据听课教师的建议,在本节课“教学过程”的第2、第3部分介绍条件语句和总结格式时,可以利用学生在小学阶段学习过的Scratch軟件中的条件语句进行迁移,加深学生对知识的拓展。
转载注明来源:https://www.xzbu.com/9/view-15116248.htm