第十课 枚举算法 教学设计

文档属性

名称 第十课 枚举算法 教学设计
格式 zip
文件大小 117.2KB
资源类型 教案
版本资源 浙教版
科目 信息技术(信息科技)
更新时间 2017-02-21 11:14:31

图片预览

文档简介

第十课
枚举算法
( http: / / www.21cnjy.com"
\o
"欢迎登陆21世纪教育网 )
教学设计
一、教学内容
通过“百钱买百鸡”的问题的解决,理解枚举算法的基本思路,初步掌握枚举算法的程序设计方案。
二、教学目标
1.知识与技能:枚举算法的程序设计方法。
2.过程与方法:培养学生分析问题,解决问题的方法和技巧。
3.情感态度与价值观:通过问题的解决,培养学生独立思考的精神并激发学生对知识探究的兴趣。
三、教学重点与难点
1.教学重点:理解枚举算法的基本思想,初步掌握枚举算法的程序设计方法。
2.教学难点:枚举算法的程序设计方法。
四、教学环境
多媒体教师一间,多媒体电脑,投影仪。
五、教学用时
1课时。
六、教学过程
1.教师导入:同学们,今天我们要来学习第十课《枚举算法》,在学习枚举算法之前呢,我们先一起来解决一个问题。
2.解决问题:一百个铜钱买了一百只鸡,其中公鸡一只5钱,母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少只?
分析问题可知,可能买到的公鸡数a从1到20,母鸡数b从1到33,小鸡数c从1到100(最多不超过100钱)。 设方程解决。
3引出枚举:一般的两元一次方程组呢是比较容易解的,这个呢是一个三元一次方程组,解决起来是不是就比较麻烦了?那么我们是不是可以这么想:这个问题可以转化为对a b c不同取值的组合进行搜索,最后找到一种组合,使他钱合为100钱。这种方法就是今天我们要讲的枚举算法,这种方法具体实现的过程就是在搜索的过程中,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果。在计算机中呢,可以利用二重循环枚举解决这类问题。
像简单的密码破解啊、寻找素数等都可以用这种方法。
4.这里我们提到一个二重循环的概念,然后简单介绍二重循环和多重循环
5.下面我们一起来学习一下计算机是如何解决这个问题的
(一)打开VB软件
(二)界面设计:首先新建一个“标准的EXE”工程,在窗体中添加一个标签控件、一个按钮控件。根据表格设置对应的属性值
Form1 百钱买百鸡问题
Command1 求解
Label1一百个铜钱买了一百只鸡,其中公鸡一只5钱,母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少只?
(三)编写代码
在Command1对象的Click事件中,编写核心程序代码。

Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer '定义公鸡、母鸡、小鸡的只数
For a = 1 To 20
For b = 1 To 33
c = 100 - a - b
If 5
a + 3
b + c / 3 = 100 Then '是否满足百钱百鸡的条件
Print a, b, c
End If
Next b
Next a

End Sub
(同学们,Print语句可以直接在窗体上输出表达式的值)
(四)调试与运行
单机求解,观察巡行结果。
老师:通过前面的学习,相信同学们对枚举算法有了一定的掌握,那么接下来的时间就留给大家做到练习。
显示练习题。
6板书设计
枚举算法
百钱买百鸡
二重循环