(共13张PPT)
算法和算法的描述
①、两个野人先过河,一个野人回来;
②、再两个野人过河,一个野人回来;
③、两个牧师过河,一个野人和一个牧人回来;
④、两个牧师过河,一个野人回来;
出谋划策1:
游戏规则
河右岸有三个牧师和三个野人,其中三个牧师要利用船过河。但必须满足两个条件:1、船上必须坐1人或2人;2、必须保证渡河过程中两岸牧师人数都不能少于野人数,否则野人将会攻击牧师。
步骤:
怎样在全班同学中找出最高的同学的身高值?
方法一:“打擂台”法
出谋划策2:
知识在线1
算法的概念:
是指在有限步骤内求解某一问题所使用的一组定义明确的规则。
方法二:“淘汰赛”法
……
提示板
计算机只能作两两比较!
高一数学模块三中1.2基本算法语句
P24例题3
A=10
A=A+15
PRINT A
END
P24例题4
INPUT A,B
PRINT A,B
X=A
A=B
B=X
PRINT A,B
END
0个输入,1个输出。
2个输入,4个输出。
昨日重现
算法的概念:是指在有限步骤内求解某一问题所使用的
一组定义明确的规则。
算法的特征:
输出:有一个或多个输出
知识在线2
有穷性
确定性
可行性
输入:有零个或多个输入
0个输入,1个输出。
2个输入,4个输出。
渡河游戏的步骤:
①、两个野人先过河,一个野人回来;
②、再两个野人过河,一个野人回来;
③、两个牧师过河,一个野人和一个牧人回来;
④、两个牧师过河,一个野人回来;
1、自然语言描述
自然语言就是人们平时交流使用的语言,如果汉语、英语、日语等。
知识在线3
三、算法的描述:
提出问题:用自然语言描述“求两个正整数中值较大的数”的方法。
分析问题:(已知什么?要求什么?)
设计算法:(如何从已知到结果)
第一步:输入两个正整数a,b;
第二步:如果a大于b,则将a的值赋给max,否则将b的值赋给max;
第三步:打印:”最大值为“max.
牛刀小试1
2、流程图描述
图形符号 名 称 功 能
终端框(起止框) 表示一个算法的起始和结束
输入、输出框 表示一个算法输入和输出的信息
处理框(执行框) 赋值、计算
判断框 判断条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”
流程线 连接程序框
昨日重现
提出问题:用流程图描述“求两个正整数中值较大的数”的算法。
开始
输入a,b
max=a
a>b
max=b
输出最大值max
结束
Y
N
牛刀小试2
指令和运算符 格 式
输入语句 INPUT “提示内容”;变量
输出语句 PRINT “提示内容”;表达式
赋值语句 =
条件语句 IF 条件 THEN
语句体1
ELSE
语句体2
END IF
关系运算符 <、>、=、<=、>=、<>
逻辑运算符 AND、OR、NOT
昨日重现
QBASIC部分指令和运算符:
3、伪代码描述
提出问题:用伪代码描述“求两个正整数中值较大的数”的算法。
伪代码:
input two integer numbers
print “请输入两个整数”
input a,b
max
if a>b then
max=a
else
max=b
output the result
print “最大数是”:max
QBASIC程序:
print “请输入两个整数”
input “a,b=”;a,b
if a>b then
max=a
else
max=b
end if
print “最大数是”:max
end
牛刀小试3
四、算法在计算机解决问题过程中的地位和作用
求两个正整数的最大公约数。
(1)、(12、16) (2)、(2678945、465)
2、更相减损术:
(1)、(12、16)→(12、4) →(8、4) →(4、4)
(2)、(2678945、465) →(2678485、465) →(2678020、465)
→(2677555、465) →(2677090、465)……
1、辗转相除法:
(1)、(12、16)→(12、4) →(4)
(2)、(2678945、465) →(465、80) →(80、65)→
(65、15) →(15、5) →(5)
结论:对于第二组数据,“辗转相除法”算法的效率明显高于“更相减损术”。解决同一个问题的算法不是唯一的,选择不同的算法编写的程序,计算机运行的效率会有很大的差异。因此算法的设计在应用计算机解决问题的过程中有着十分重要的作用。
复习归纳:
算法的概念:是指在有限步骤内求解某一问题
所使用的一组定义明确的规则。
算法的特征:
有穷性;
确定性;
可行性;
输 入:有零个或多个输入;
输 出:有一个或多个输出。
算法的描述:
自然语言;
流程图;
伪代码。算法和算法描述
一、基本说明
1模块:高中信息技术基础
2年级:高中二年级
3所用教材版本:上海科技教育出版社
4所属的章节:第一章第二节
5学时数: 40分钟(多媒体教室授课)
二、教学设计
1、教学目标:
(1)、知识与技能目标:
①、了解算法的基本概念和特点;
②、掌握算法的描述方法;能用自然语言、流程图、伪代码描述算法;
(2)、过程与方法目标:
通过分析实际生活中的问题,理解和熟悉自然语言、流程图和伪代码等清晰描述解决问题的过程,确立算法的概念;
(3)、情感态度价值观目标:
①、通过对生活中具体实例的分析和解决,激发学生的学习兴趣。培养学生的自主探究能力;
②、通过算法描述,锻炼学生自行分析问题及解决问题的能力,培养学生严谨的思维习惯;
③、增强学生的逻辑思维能力和表现意识,鼓励学生分享思想和反思自我的学习理念。
2、内容分析:
本课是高二第一章的内容,也是整个《算法与程序设计》模块的基础知识,本节内容对后续章节的学习起着十分重要的作用,让学生从整体上计算机解决实际问题的过程;因本节内容在高一数学模块三第一章中学生已有初步接触,比较简单,教师可根据具体情况有所深入地进行授课。
3、学情分析:
学生具有一定的分析问题、解决问题的能力,并且在高一数学模块三中对算法的概念和用流程图描述算法有初步的了解,且已初步了解面向过程的三种结构,但未对算法形成抽象认识和理解;还不能对算法做出恰当的描述。
4、设计思路:
本节课是一堂理论性的课,又缺乏理论的深度,如果只由教师讲解就会显得比较枯燥,因此本堂课的设计思路是从具体的案例入手,引导学生进行思考、讨论,最后得出基本的结论,形成一定的概念,达到理解和应用的目的。教师的主要任务在于积极引导,调动学生的积极性。
三、教学过程
教学阶段 教师活动 学生活动 设计意图
一、引入 1、出示渡河游戏,要求学生给出解决的办法。 2、怎样在全班同学中找出最高的同学? 积极参与,发表观点,说出解决的办法。 运用学生感兴趣的事物,激发学生的学习兴趣。
二、新课讲解 (一)算法的概念 通过总结两个实例的算法分析过程,引出算法的概念。 观看课件,与教师探讨算法的意义。 引导学生将感性认识提升为理性认知。
(二)算法的特征 展示高一数学模块三第一章的三个例题,找出算法还具有两个特点:一个算法有0或多个输入、1或多个输出。 继续总结渡河游戏,得出算法具有有穷性、确定性和可行性。 思考和分析范例,领会算法的特征。 回顾实例,寻找规律,共同总结。 调动学生对生活的认识和体会,融入对算法的学习和理解。
(三)算法的表示——自然语言 利用渡河实例,细致分析算法,介绍自然语言描述算法设计。 领会算法设计的过程:提出问题、分析问题、设计算法。 提出问题:“求三个数中值最大的数。”——分析问题——用自然语言描述出算法。 分步骤讨论和分析,会运用自然语言设计实例的算法。 对实例进行初步算法设计,自然语言易于理解,为后续其他抽象描述方法作铺垫。
(四)算法的表示——流程图 总结自然语言的优缺点,引出流程图的表示方法,介绍流程图的基本结构,分析其逻辑关系的表示。 提出问题:“求三个数中值最大的数。”——分析问题——用伪代码描述出算法。 积极探索、分析,运用流程图描述该问题的算法。 对比学习,加深对各类算法设计描述方法的认识,培养学生设计算法的能力。
(四)算法的表示——伪代码 通过分析流程图不易被转换为计算机语言,并且表示复杂的问题时较麻烦,对比引出伪代码。 介绍伪代码对算法的描述方法,针对赋值指令、循环指令、条件指令和输入、输出指令以及关系运算符和逻辑运算符讲解一般格式。 提出问题:“求三个数中值最大的数。”用伪代码描述出算法。 观看课件,积极参与分析,结合已学程序设计的三种结构,体会伪代码的基本指令。 积极分析指令语句含义。 引导学生掌握伪代码中的指令语言,以自然语言描述实例为基础,进一步运用伪代码描述,提高学生对算法的理解。
三、归纳总结 总结算法的概念和特征,以及算法设计的表示。 回忆,记录 总结本课学习内容,梳理学生应掌握的知识。
四、课后延伸 回顾高一数学模块三中介绍求两个正整数的最大公约数的两种经典方法:“更相减损术”和“辗转相除法”,同时给出两组数据分别求他们的最大公约数:(12,16)、(2678945、465)。分组讨论,展示各组设计方案。 同种描述算法的方法对比,分析各组设计出的算法是否最佳。 互相讨论、积极探究,分组以两种不同的算法求两组数据的最大公约数,并进行总结反思。发现对于第二组数据,“辗转相除法”算法的效率明显高于“更相减损术”。 让学生发现解决同一个问题的算法不是唯一的,选择不同的算法编写的程序,计算机运行的效率会有很大的差异。从而让学生体会到算法的设计在应用计算机解决问题的过程中的重要作用。
课后反思:
1、整个课堂教学气氛非常活跃,条理清楚,不同层次的学生都能积极参与到课堂讨论中来。主要得益于两个方面:一是开始的渡河游戏,一下子将学生从没有上机的失望中吸引过来;二是整堂课都在围绕实例进行讲解,同时有些内容是基于高一数学模块三中的已学知识,知识点的难度小。如“课后延伸”部分的求最大公约数的两种经典方法在高一数学中已有介绍,所以整堂课学生的参与度高。
2、本堂课内容略显偏多,由于时间问题,有些地方的讨论不够深入