内容正文:
课时编号
备课时间
上课时间
课 题
第四单元 用算法解决问题 第3课 用程序验证算法
教学目标
(一)信息意识
1.理解程序是算法的具体实现,知道通过运行程序可以验证算法是否正确,形成“算法→程序→验证”的完整问题解决意识。
2.认识到程序测试的重要性,知道不同数据的测试能发现算法中的漏洞,培养严谨的信息处理态度。
(二)计算思维
1.能将 “加法运算小能手”的流程图算法,转化为Scratch积木程序,理解变量、循环、条件判断在程序中的作用。
2.能根据运行结果分析程序中的问题(如逻辑错误、边界条件错误),并进行调试和优化,初步形成调试与迭代优化的思维。
(三)数字化学习与创新
1.能在 Scratch中新建变量、使用随机数积木、编写条件判断和循环结构,完成“自动出题、自动批改”的核心功能。
2.能根据需求优化程序,如添加角色反馈、修改提示文字,提升程序的交互性和趣味性,培养数字化作品的设计与优化能力。
(四)信息社会责任
1.了解“程序 Bug”的由来,认识到程序错误的普遍性,培养耐心、细致的科学探究精神。
2.在小组测试程序的过程中,学会客观评价他人作品,提出建设性意见,培养合作交流与负责任的数字化态度。
教学重点
将流程图算法转化为Scratch程序,掌握变量、随机数、条件判断和循环结构的使用,完成核心功能的编写。
教学难点
理解变量的作用与赋值逻辑,能根据程序运行结果调试和优化算法,处理边界条件(如题目数量控制、答案对比)。
教学方法
任务驱动法、演示教学法、小组合作探究法、讲练结合法
教学准备
1.多媒体课件、苏科版教材
2.Scratch软件(提前安装并调试,预设好上节课的界面文件)
3.课堂学习单(含变量说明表、程序调试记录单)
4.程序Bug小故事卡片、流程图与积木对应关系卡片
教 学 过 程
教学环节
教师活动
学生活动
设计意图
一、情境导入,回顾旧知(5分钟)
1.回顾前两课:“我们已经为‘加法运算小能手’设计了算法流程图,现在怎么让它真正动起来呢?”
2.引出课题:今天我们就来学习《用程序验证算法》,把流程图变成能运行的程序。
3.趣味导入:播放 “程序Bug” 小故事,提问:“程序里的错误为什么叫 Bug?”激发学生兴趣。
1.回顾算法流程图的内容,思考如何实现程序。
2.聆听 Bug 的故事,对程序调试产生好奇。
通过回顾旧知和趣味故事,自然过渡到程序实现,激发学生的学习兴趣和探究欲望。
二、分步演示,搭建基础(12分钟)
1.演示变量设置:
讲解变量的作用:记录加数1、加数2、和、答对题数、答错题数。
演示在 Scratch中新建变量,并设置初始值为0。
2.演示出题步骤:
讲解随机数积木的使用,设置加数1和加数2为1-9的随机数。
演示计算和,并将题目显示在舞台上
3.学生操作:跟随教师完成变量设置和出题部分的代码编写。
1.理解变量的作用,学习新建变量并赋值。
2.学习使用随机数积木生成题目,编写出题部分的代码。
3.动手操作,完成基础部分的搭建。
通过分步演示,降低学习难度,让学生逐步掌握变量、随机数的使用方法,为后续完整程序编写打下基础。
三、合作探究,完善程序(15分钟)
1.提出任务:完成接收答案、自动批改、循环出题和统计结果的代码。
2.引导探究:
接收答案:使用 “询问并等待” 积木获取用户输入。
自动批改:使用条件判断积木,对比用户答案和正确答案,给出反馈,并更新答对/答错题数。
循环出题:使用“重复执行10 次”积木,控制题目数量。 统计结果:循环结束后,显示答对题数和答错题数。
3. 小组互助:巡视指导,鼓励学生互相帮助,解决遇到的问题。
4.思考交流:“为什么要测试不同的数据?测试数据时要注意什么?”
1.分组讨论,梳理自动批改、循环、统计部分的逻辑。
2.跟随引导,完成条件判断、循环结构的代码编写。
3.小组内互相帮助,调试程序中的错误。
4.思考并回答测试数据的重要性,认识到测试能发现程序漏洞。
通过任务驱动和小组合作,让学生自主探究程序的核心逻辑,掌握条件判断和循环结构的使用,培养计算思维和合作能力。
四、拓展优化,测试迭代(8 分钟)
1.拓展任务:优化程序,如:为答对/答错添加角色反馈(切换造型、修改对话文字)。
调整随机数范围,实现20以内加法(如加数1 +加数2≤20)。 添加错题记录功能。
2.小组测试:让学生互相运行对方的程序,提出修改建议。
3.挑战延伸:思考“减法运算小能手”程序的不同点(如被减数要大于减数),为后续学习铺垫。
1.尝试优化自己的程序,添加反馈效果或调整功能。
2.小组内互相测试程序,提出建设性意见。
3.思考减法程序的实现要点,对比加法与减法的算法差异。
通过拓展优化和小组测试,让学生体验程序迭代优化的过程,培养数字化创新能力和信息社会责任。
五、课堂小结,总结提升(5 分钟)
1. 回顾总结:今天我们把算法流程图变成了可运行的程序,学习了变量、随机数、条件判断和循环结构的使用,还知道了程序测试和调试的重要性。2.知识梳理:和学生一起梳理 “确定问题→设计算法→编写程序→验证优化” 的完整问题解决流程。
3.布置作业:完善自己的程序,尝试实现 “减法运算小能手” 的部分功能。
1.回顾本节课的重点内容,梳理程序编写的步骤。
2.理解完整的问题解决流程,形成系统的思维。
3.记录作业,为后续学习做准备。
帮助学生梳理知识脉络,形成系统的问题解决思维,同时为后续的拓展学习做好铺垫。
板书设计
第3课 用程序验证算法
一、算法 → 程序
流程图 → Scratch积木代码
二、核心积木
1.变量:加数1、加数2、和、答对题数、答错题数
2.随机数:生成1-9的数
3.条件判断:对比答案,给出反馈
4.循环:重复执行10次(出10道题)
三、程序优化与调试
测试数据 → 发现Bug → 优化算法/代码
教学反思
1.成功之处:分步演示的方式有效降低了学生的学习难度,大部分学生能完成核心程序的编写,理解变量、条件判断和循环的作用。小组测试环节让学生体验了程序优化的过程,课堂参与度高。
2.待改进之处:部分学生对变量的赋值逻辑理解仍有困难,尤其是在循环中变量的更新。后续可以增加变量变化过程的可视化演示,帮助学生理解。
3.后续调整:下节课可以重点讲解 “减法运算小能手” 的边界条件处理,对比加法和减法程序的异同,进一步巩固算法设计与程序实现的能力。
学科网(北京)股份有限公司
$