算法的初步认识
一、教学内容分析
本次课是算法的第一节课,是计算机解决实际问题、程
序设计的基础知识,算法是高中信息技术课程的程序设计中
的重难点,内容抽象难懂。从教材第一课的内容来看,出现
了很多计算机的专业术语,在学生一无所识的情况下归纳总
结性太强,晦涩难懂,如知识链接中指令、算法必须 0 个或
多个输入、一个或多个输出等,不仅无助于了解计算机解决
问题的一般过程,还给学生极大的压力,造成学生畏难而退,
无法实现任何情感态度价值观的目标。
二、教学目标
1. 知识与技能目标
(1)了解算法的概念,体会算法的思想、算法的特征
(2)能用自然语言描述解决问题的算法
2. 过程与方法目标
(1) 体会从特殊到一般再到特殊的认知过程
(2) 培养分析问题解决问题的能力
3. 情感态度价值观目标
(1)通过对算法的概念特征的学习,体会算法的严谨
性,算法的实用价值
(2)激发算法的学习兴趣,形成合作探究的意识
三、教学重难点
算法的确定性特征;算法必须 0 个或多个输入、一个或
多个输出的特征。
四、课时:1 课时
五、授课内容
(一)导入
作为家里的一员,在平时分担一些力所能及的事实我们
应尽的义务,你每天都帮家里做家务吗?会煮饭炒菜吗?有
拿手好菜吗?——番茄炒蛋的菜谱
菜谱是厨师的做菜的算法,乐谱是乐队演奏的算法……
(二)算法的概念
广 义 地 讲 : 算 法 是 为 完 成 一 项 任 务 所 应 当 遵
循的一步一步的规则的、精确的、无歧义的描述,它的总步
数是有限的。
狭义地讲:所谓算法,用来解决问题的所采取的方法与
步骤的精确描述。
提问:同一个菜谱,每一位厨师都能炒出美味的一道番
茄炒蛋吗?
算法要具备一定的特征。
(二)算法的特征
1.有穷性:一个算法必须在执行有限个操作步骤后终止。
如果在有限的操作步骤内完不成,得不到结果,那你的
算法将无限的执行下去,永远不会停止。除非你手动停止。
手动停止是算法步骤的其中一步。例如:电视,电脑系统。
2.确定性:算法的每一步骤必须有确切的定义,不可出
现任何二义性。
例如:(1)锅内加油,油热,倒入番茄,加盐翻炒 ——到底
加多少盐呢?一克?一调羹?(2)咬死了猎人的狗——死
的到底是猎人还是狗呢?
3.可行性:算法中的每一步操作都应该能有效执行、可
以实现的,并在有限时间内能得到确定的结果。
例如:(1)13 除以 0——0 不能做除数;(2)寻秦记—
—穿越时空 。
4.输入:一个算法有 0 个或多个输入,以刻画运算对象
的初始情况,所谓 0 个输入是指算法本身定除了初始条件。
例如:(1)求
x
2
+ 5x + 6 = 0
;(2)求
ax
2
+ bx + c = 0
。
两个一元二次方程,如要求出 x 的确切值,例 1 无需输入,
例 2 需要输入 a、b、c 的值,通过 VB 程序展示。
5.输出:一个算法有一个或多个输出,以反映对输入数
据加工后的结果。没有输出的算法是毫无意义的。
例如:(1)心理性格测试——同一个测试题,能测出的
性格有多种:内向、外向等。(2)方程
x
2
+ 5x + 6 = 0
有两
个解。
小结算法的特征。
案例 1:一个商人有 12 枚纪念币,其中有一枚略轻的是
假币。你能用天平(不用砝码)将假币找出来吗?
学生例举不同算法:穷举法(拿其中一个做参照,跟其
他的一一对比)、二分法(6+6→3+3→1+1)、两两比较法等。
(三)算法的思想
1. 事实上,我们完成任何事,都要有步骤,合理安排步
骤,会达到事半功倍的效果。—— 整体性
2. 算法的基本思想就是我们分析问题时的想法,由于想
法的不同,思考的角度不同,着手点不一样,同一问题存在
不同的算法。——优劣性
3. 案例 2:大家试算下算式结果:
(1)试算 1+2+3+……+10。
(2)试算 1+2+3+……+87。
(3)试算 1+2+3+……+827。
解法:(1)等差求和法: Sn=(首项+末项)*n/2(Sn
为和,n 项数)。(2)穷举法。
从传统的思想出发,公式法远比穷举法优,计算时间大
大减少,提高运算效率。VB 程序展示两种算法的运算效率和
计算时间,发现无差别。——科学性
案例 3:有三个牧师和三个野人过河,只有一条能装下
两个人的船,在河的任何一方或者船上,如果野人的人数大
于牧师的人数,那么牧师就会有危险. 你能不能找出一种安
全的渡河方法呢? 找出它算法。
(1) 学生讨论思考,并上台实现算法。
(2) 用自然语言描述算法,如:
1.两个野人上船过河
2.一个野人回来,再载一个野人过去
3.一个野人下船,一个野人回来,下船
4.两个牧师过去,一个牧师下船,一个野人上船,回来
5.野人下船,一个牧师上船,两个牧师过去
6.两个牧师下船,一个野人回来
7.野人上船,过河
这样的算法有问题吗?——注意算法的特点,描述要精
确,给每一个牧师和野人编号起名字。
四、
五、课后思考
一金矿老板给员工发薪,一周一条金条。一个固执的金
矿工人不要一条金条为周薪报酬,非要天天给工资。你能帮
老板在金条上切割两次,就可以满足工人的要求吗?写出精
确的算法描述。 (提示:结合算法的特征及其思想)
六、板书
算法的概念:方法、步骤、精确
算法的特征:有穷、确定、可行、输入、输出
算法的思想:整体、优劣、科学