徐钦
教材分析
本课是江苏科学技术出版社出版的小学《信息技术》五年级“Scratch编程”单元中第10课《小猫出题》的内容,主要以小猫出题为主线,介绍变量在Scratch中的运用。本节课内容在原有教材基础上进行了改编,基于学校的科学节活动“创意搭建胡萝卜高塔”这样一个真实的校园生活情境,要求学生学会通过编程的方式进行数据分析,掌握利用计算机比较数字大小的方法。在解决问题过程中,学生可以掌握Scratch中变量的运用,初步了解并体验算法思维,并以此拓展到更多数之间的比较方法,体会运用程序设计的思维解决实际问题。教师在课堂中应注重引导学生借助流程图的方式锻炼程序设计思维能力。
学情分析
从已有技术能力维度分析,学生经过前九课的学习,已经掌握了Scratch中的基础控件指令,能够搭建出简单的脚本。从知识体系维度而言,编程的方法具有多样化特征,思维方式较为发散,对学生来说,知识难度较大。从认知特点角度分析,五年级的学生处于具体运算向形式运算的过渡时期,需要通过真实的问题情境引导帮助其建构明确的知识框架,体验程序设计中的算法思维。
教学目标
知识与技能目标:认识变量,掌握新建变量的方法。学会使用“侦测”模块中的询问与回答控件,获取用户的输入信息。掌握求两个数、三个数中最大数的程序设计方法。
过程与方法目标:通过自主探究、小组合作等学习方式,掌握求最大值的程序设计方法,体会程序设计中的算法思维。
情感态度与价值观目标:感受将Scratch与真实的生活情境相结合的趣味性,激发学习程序设计的兴趣。体验程序设计在生活中的运用,培养分析问题、交流表达和解决问题的能力。
行为与创新目标:掌握对两个数、三个数的大小比较方法后进行思维迁移,学会更多的数之间比较大小的方法,学会用算法解决问题,提高计算思维。
教学重难点
重点:认识并新建变量;掌握多个数之间进行大小比较的方法。
难点:理解程序设计中交换运算的方法,体验算法思维。
课时安排
1课时。
教学方法与手段
问题导向式教学法。
教学准备
网络教室、Scratch 2.0软件、多媒体课件、学习任务单等。
教学过程
1.师生互动,激趣导入
教师播放学校科学节活动视频集锦。
师:如何在这些大量的实验数据中快速地判断出最高塔?
教师/学生在Scratch范例中输入两组高塔的数据,角色自动判断出最大的数。(引出Scratch编程解决问题的思路,板书出示课题)
设计意图:通过生活中的实例,让学生从经验出发,体验运用Scratch编程处理数据信息的具体形式和应用,为任务的推进埋下伏笔。
2.任务一:新建变量
师:同学们,读一读脚本,试一试效果。思考脚本中有哪些指令?(作品脚本如图1所示)
学生说出作品中的控件。教师在黑板上张贴板书。
师:变量是一个新的模块,我们将它看作一个用来存储信息的容器,并给它起个名字叫“第一座塔”,当你输入所回答的数字之后,我们就将“第一座塔”设定为“回答”。
学生自主参考学习单,在Scratch中学习新建“变量”,命名为“第二座塔”。
设计意图:学生通过阅读程序代码,学习并理解指令的含义。教师通过形象的板书展示讲解“变量”的含义,帮助学生对“变量”的概念形成初步认知。教师利用学习单为学生的学习提供必要的支架,让学生较为顺利地完成任务一。
3.任务二:两个数的比较
师:我们该如何比较这两组高塔的数据大小?可以借用流程图来梳理编程思路。
学生打开Flash版流程图(如图2),小组内讨论交流,拖拽图片将流程图补充完整。
学生在Scratch作品中搭建脚本,完成任务二,并演示作品。
设计意图:此环节为本课中的教学难点,学生会存在程序设计方面的困难。教师借助流程图,共同分析、梳理“求两个数中的最大数”的编程思路,帮助学生加深对程序设计中分支结构的认知,培养学生的编程思想与算法思维,达到核心素养中计算思维的培养目标。
4.任务三:三个数的比较
师:刚才我们实现了两个数的大小比较,那现在有三组数据,第三组的数据是由计算机随机生成的,该如何判断大小?
学生小组内讨论交流,利用学习单进行分析(如上页图3)。
师生共同分析:通過师生交流梳理编程思路,明确需要经过两次数据的大小比较,方能得出结果。(教师出示课件,如图4)
学生在Scratch作品中搭建脚本,实现三组数据的大小比较,完成任务三。
教师演示一两个学生作品并点评。
设计意图:在完成任务二的基础上,延伸拓展任务三。学生通过学习单上的示意图在小组内开展讨论,引导其自主思考探索,学会知识的迁移运用,让学生进一步理解使用计算机进行数据处理的便捷性,实现思维的迁移和外显。
5.总结拓展
师:今天所学的“求最大数”程序设计有bug(漏洞)吗?还有哪些需要进一步修改调试的地方?
学生交流,表达自己的想法。
生1:如果输入两组相同的数据,结果判断会出问题。
生2:三个数的比较还有其他的方法……
……
师:如果将胡萝卜高塔的实验数据量扩大到整个年级乃至全校,那么计算机进行数据分析的优势就显而易见了,利用今天所学的编程方法也是相通的。
教师在黑板上进行板书总结。进一步鼓励学生学会用编程的方式优化方法,解决问题,提高效率!
设计意图:此处为学生学习后的自我反思与总结阶段,作为自我诊断性评价的重要过程,可以再次反思自己的程序设计方法,不断地做出修正、改进与完善,直至可以达到程序迭代的高级阶段。教师鼓励学生勇于实践探索,建立属于自己的解决问题的编程方案。
教学反思
在本课的教学过程中,笔者重在引导学生在解决具体问题的过程中掌握Scratch的基础知识和技能,并关注学生思维生成过程,促进计算思维的养成,提升核心素养。笔者设计了三个任务推进编程的方法认知与掌握达成。学生初步体验到运用程序设计方法进行数据的分析处理,解决生活中实际问题的过程。在试上磨课期间,笔者对教学过程进行了多次调整,从问题情境的选择到拓展环节的编程方法引导,进行了更加符合学生认知特点的处理。
核心素养的中间层“问题解决指向”(简称“问题解决层”),以解决问题过程中所获得的基本方法和基本态度为核心。在本节课的设计中,笔者采取小组合作的方式开展探究式学习,学生对变量、询问、回答等指令有了更深刻的理解和体会。同时,Scratch中的顺序、分支、循环等基本的算法也在作品中得到体现,潜移默化地培养学生的计算思维。学生也乐于参与其中,通过集体智慧,碰撞出思维的火花,促成知识的建构与问题的解决。