内容正文:
b课题: 2.4可以复用的代码
执教班级:高一(1)(2)(3)(4)(5)
课时安排: 2
教学目标
1. 火柴棒摆数字问题中的算法分析。
2. 理解火柴棒摆数字问题的流程图,并能自己绘制“判断数字需要几根火柴棒”的流程图。
教学重难点
重点:
1. 穷举需要6根火柴棒的自然数。
2. 计算一个数需要多少根火柴棒。
难点:
理解计算一个数需要多少根火柴棒的实现方法。
第一课时
教学环节
教学内容
媒体或技术应用
一、导入
展示图片不同的数字需要的火柴棒个数也不同。这里有6根火柴棒,请你列出所有能摆出的自然数,要求火柴棒正好用完。
【学生活动1】
1. 列出3个可以用6根火柴棒摆放的数字,分别是 、 、 。
2. 6根火柴棒能摆放的最大数是 。
打开学案,尝试完成
师展示学生的答案——请问我们是否把满足条件的自然数都列举出来了?
【学生活动2】
如何设计算法,让计算机找出这些自然数?
ppt
二、解决实际问题
算法分析
1. 数字“1”需要的火柴棒最少,因此能摆出的自然数最大是111。
2. 对0~111之间的每一个数进行计算,统计需要的火柴棒根数。
3. 凡是恰好需要6根火柴棒的数直接输出。
流程图
【学生活动3】
如何计算一个数需要多少根火柴棒呢?
学生思考,完成学案
已知:数字0~9对于使用的火柴棒根数
数字
火柴棒根数
0
6
1
2
2
5
3
5
4
4
5
5
6
6
7
3
8
7
9
6
未知:对0~111之间的每一个数进行计算,统计需要的火柴棒根数。
实现:将这个数的每个数位上的数字所需要的火柴棒数加起来。
如何计算一个数需要多少根火柴棒呢?
步骤:
1. 将这个数除以10求余,求得个位数;
1. 把个位数对应于火柴棒的个数进行累加;
3. 将这个数除以10取整,去掉个位数;
4. 重复1和2以上步骤直到这个数为0。
学生尝试,补充流程图
(
n>0
求n的个位数
求个位数对应的火柴棒数
棒数进行累加
去掉数n的个位数
)
师:展示完整流程图(挑选学生作品)
三、课堂小结
关于火柴棒问题的算法分析
理解计算一个数需要多少根火柴棒
理解火柴棒问题的流程图的表示
四、课后作业
预习课本p42页函数
了解什么是系统函数和自定义 函数
板书设计:
备注:实验等实践课的教学设计样式可参照新授课教学设计模板编制。
$$项目学习:
· 穷举需要6根火柴棒的自然数。
· 计算一个数需要多少根火柴棒。
· 项目要求:请同学们用6根火柴棒摆出所有的自然数,要求火柴棒正好用完。
【学生活动1】
1. 列出3个可以用6根火柴棒摆放的数字,分别是 、 、 、 。
2. 6根火柴棒能摆放的最大数是 。
流程图一
【学生活动2】
· 如何设计算法,让计算机找出这些自然数?
算法分析:
1. 查找符合条件数的范围: 。
2.从0开始,利用穷举法一一列举出范围内每个“数”。
3. 每个数需要几根火柴棒。
4.判断是否用了6根。满足条件,输出此数。
【学生活动3】
如何计算一个数需要多少根火柴棒呢?请学生尝试绘制流程图
流程图二
【拓展】
请同学尝试根据流程图书写出代码
$$