2.4 可以复用的代码教学设计-2026-2027学年教科版高中信息技术必修一

2026-06-18
| 4页
| 315人阅读
| 2人下载
普通

资源信息

学段 高中
学科 信息技术
教材版本 高中信息技术教科版必修1 数据与计算
年级 高一
章节 2.4 可以复用的代码
类型 教案-教学设计
知识点 -
使用场景 同步教学-新授课
学年 2026-2027
地区(省份) 全国
地区(市) -
地区(区县) -
文件格式 DOCX
文件大小 35 KB
发布时间 2026-06-18
更新时间 2026-06-18
作者 匿名
品牌系列 -
审核时间 2026-06-18
下载链接 https://m.zxxk.com/soft/58402752.html
价格 0.50储值(1储值=1元)
来源 学科网

摘要:

该高中信息技术教学设计聚焦“代码复用”核心知识点,通过“火柴棒摆数字”情境导入,从6根火柴摆数问题过渡到算法设计,衔接学生已学的顺序、分支、循环结构,以问题拆解为支架引导学习函数与模块知识。 该资料以任务驱动法为主,围绕“火柴棒问题”采用自顶向下拆解策略,对比“不用函数”与“用函数”的代码差异,培养计算思维。引导学生识别重复代码形成复用意识(信息意识),动手编写调试函数提升数字化学习能力,帮助学生理解函数价值,为教师提供清晰教学流程,提升课堂效率。

内容正文:

年级 高一 课题 2.4可以复用的代码 课时 1 教材分析 本节课是第2单元“编程计算”的最后一节,也是难度最大的一节。在此之前,学生已经学习了顺序、分支、循环三种结构,能用Python解决一些简单问题。这节课要解决的核心问题是:当程序变复杂、代码中出现大量重复时,怎么让代码“瘦下来”。 教材围绕“火柴棒摆数字”这个经典问题展开,引导学生经历从“不用函数”到“用函数”再到“发布模块”的完整过程。函数解决的是“程序内的代码复用”,模块解决的是“程序间的代码共享”。本节课内容对后续学习迭代、递归及算法设计有重要作用。 学情分析 授课对象是宁夏高一年级学生。前面几节学下来,学生基本能看懂简单的Python代码了,但动手写的能力参差不齐。缩进不规范、冒号遗漏、全角半角符号混用——这些老问题还是普遍存在。 学生之前习惯了“线性思维”——程序从头写到尾,遇到重复的就复制粘贴。让他们接受“先定义一个函数再用”这种非线性的思维方式,是这节课最大的坎。另外,“计算一个数需要多少根火柴棒”的算法涉及循环取余和整除,对部分学生来说有一定难度,教师可以借助流程图帮助学生理解 教学目标 1.信息意识:能识别程序中重复出现的代码片段,理解代码复用是提升编程效率的重要途径,形成主动寻求复用的意识 2.计算思维:掌握“自顶向下、逐步细化”的模块化程序设计思想,能根据实际问题定义函数并正确调用,体会“分而治之”的问题解决方法 3.数字化学习与创新:熟练使用Python开发环境编写、调试自定义函数,体验模块发布与导入的完整流程 4.信息社会责任:理解代码共享在开源社区中的意义,形成尊重他人知识产权、乐于分享自己成果的意识 教学重点 1.将复杂问题拆解为若干子问题的“自顶向下、逐步细化”思想 2.自定义函数的定义格式(def语句、函数名、参数、函数体、return返回值) 3.函数的调用方法及参数传递过程 4.模块发布和导入的基本步骤 教学难点 1.“计算一个数需要多少根火柴棒”的算法设计与流程图绘制 2.理解函数定义和调用的执行流程——定义时函数体不执行,调用时才执行 3.形参与实参的对应关系 教学方法 采用任务驱动法为主,辅以对比教学法和小组协作法。整节课围绕“火柴棒摆数字”这一核心任务展开,采用“自顶向下、逐步细化”的问题拆解策略:先把大问题分解为“穷举数字”和“计算火柴棒数”两个子问题,再分别解决。学生在“不用函数”和“用函数”的对比中体会代码复用的价值。 教学准备 · 教学环境:多媒体网络机房,安装Python IDLE或Thonny · 教学资源:课件、学案、半成品代码文件 · 数据准备:火柴数字对照表 f = [6, 2, 5, 5, 4, 5, 6, 3, 7, 6](0-9各数字所需火柴棒数) 教学过程 教师活动 学生活动 设计意图 环节一: 情境导入——6根火柴能摆出哪些数?(8分钟) 1.导入“同学们,先看大屏幕。这是0到9用火柴棒摆出来的样子。问大家一个问题:如果有6根火柴棒,全部用完,能摆出哪些自然数?” 2. 教师追问:“6根火柴能摆出的最大数是多少?” 引导学生发现数字“1”只用2根火柴,是最省火柴的数字,所以6根火柴最多能摆111,不会超过这个数。 3.思考“现在问题来了——如果让计算机帮我们把所有答案都找出来,怎么写程序?” 教师在黑板上记录:从0到111挨个判断,每个数需要几根火柴,刚好6根就输出。 让学生先自己猜几个答案。学生可能说0、6、9、14、77等。 观察火柴数字图片,思考并列举可能的答案,参与讨论算法思路。 火柴棒问题带有游戏性质,能快速吸引学生注意力。从“找答案”到“设计算法”的过渡自然发生,为后续引入函数做铺垫。 环节二: 问题拆解——用流程图梳理思路(10分钟) 1.拆成两个小问题 1)穷举范围:从0到111,依次判断每个数 2)计算火柴棒数:给定一个数字,算出它需要几根火柴棒 教师画流程图 2.怎么计算一个数字需要几根火柴棒?” 引导学生的思路: 1)把这个数除以10取余,得到个位数 2)查表得到个位数需要的火柴棒数,累加起来 3)把这个数除以10取整,去掉个位数 4)重复以上步骤,直到这个数变成0 分析:‘计算火柴棒数’的功能,在穷举循环里要被反复用到。如果我们把这段逻辑单独封装起来,需要的时候调用就行——这就是今天要学的函数。    在学案上补充完成“计算一个数需要多少根火柴棒”的流程图。小组内部互相检查流程图是否正确 “自顶向下、逐步细化”是本节课要渗透的核心思想。先用流程图把问题可视化,降低认知门槛。把“计算火柴棒数”从主问题中剥离出来,为引入函数做铺垫——学生看到的是“这个功能要被反复用”,自然就理解了“为什么需要函数” 环节三: 认识函数——从概念到定义(12分钟) 1. 思考:“什么是函数?大家已经用过print()和input(),这些就是系统自带的函数。现在我们要自己写一个——这叫用户自定义函数。” 2.板书函数定义的基本格式: python def 函数名(参数): # 函数体 return 返回值 强调:“函数的四部分:函数名、参数、返回值、函数体。其中函数名和函数体必须有,参数和返回值根据需要来。” 3.把刚才“计算火柴棒数”的逻辑写成函数: python def match_num(num): f = [6, 2, 5, 5, 4, 5, 6, 3, 7, 6] total = 0 if num == 0: return f[0] while num > 0: digit = num % 10 total = total + f[digit] num = num // 10 return total 重点强调几个易错点: · def后面有冒号,不能忘 · 函数体要缩进,和if、for一样 · return返回结果,函数执行到这里就结束 在电脑上照着教师的代码输入函数定义。然后试着调用: python print(match_num(6)) print(match_num(14)) 验证结果是否正确。 先让学生“照着做”建立感性认识,再去理解抽象概念。把“菜谱”这个类比作为讲解执行流程的辅助,帮助学生理解“定义不等于执行”。 环节四: 调用函数——完成火柴棒问题(10分钟) 1.展示火柴棒问题完整代码 2.强调参数传递:调用时写的i是实参,定义时写的num是形参——实参的值传给形参,函数内部用的是形参 在电脑上运行完整程序,验证输出结果。然后修改snum的值,测试不同火柴棒数量的情况。 展示“写完函数后主程序多干净”的效果,让学生直观感受函数的价值。通过修改snum体会“一次编写,多次调用”的复用思想。 环节五: 课堂小结(5分钟) 1.表格对比“不用函数”和“用函数”的区别: 不用函数 用函数 代码结构 大量重复代码 封装复用 可读性 差 好 修改维护 改一处要改多处 只改函数内部 可移植性 差 好 “函数的核心价值:把重复的代码封装起来,需要的时候调用就行。” 2.布置课后作业:预习课本模块发布相关内容。 完成学案上的课堂检测 用对比表格帮助学生建立清晰的知识结构。课堂检测即时反馈学习效果。 学科网(北京)股份有限公司 $

资源预览图

2.4 可以复用的代码教学设计-2026-2027学年教科版高中信息技术必修一
1
2.4 可以复用的代码教学设计-2026-2027学年教科版高中信息技术必修一
2
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。