描述算法的特征,理解算法在问题解决中的作用。
选用恰当的描述方法和控制结构表示简单算法,增强用算法解决问题的意思。
学习重点: 理解算法的含义、特征和基本结构,学会利用不同的描述方法描述算法。
学习难点:学会对实际问题抽象建模,利用算法解决问题的思路,使用恰当的描述方法和控制结构来描述问题。
学会利用网络自主开展学习。
情境:
著名数学家华罗庚曾经提出“烧水泡茶问题”,杯子未洗,水未烧,但是要泡茶喝,我们该怎么办?
(1)思考分析:给出解决方案,写明步骤过程。
(2)根据“烧水泡茶问题”理解算法的基本概念——算法是为解决一类特定问题而采取的确定的、有限的步骤。
算法举例,明确算法的特征
(1)说说你生活中的算法实例
(2)判断:下列问题的解决有算法吗?
例1.找出所有的素数。
例2.已知L=10,求L/自然数的值。
例3.已知X=-2,求X的算术平方根。
对比判断、分析,你觉得算法的基本特征有哪些?(有输入、有输出、有穷性、可行性、确定性)
微课:举一些生活中的算法实例,分析三个例子,总结出算法的特征。
分析实例,描述算法
情境:通常在使用红绿灯指挥交通时,会在信号灯下方增加一个倒计时器,提示过往的行人和车辆。
(1)思考:用自然语言描述“倒计时15s”的算法。
算法描述的方法一——自然语言。
微课:自然语言描述“倒计时15s”的算法
用自然语言描述算法易于理解,但容易产生二义性,是否有其他方式可以描述算法?
(2)算法描述的方法二——流程图。
观察思考,说说用流程图描述算法的优点。
流程图常用符号绘制及其功能:
任务:利用流程图的方式描述“输出两个数中最大数”的算法。
微课:最大数算法的流程图绘制过程
(3)算法描述的方法三——伪代码。
算法的描述可以用自然语言和流程图以外,常用的还可以用伪代码。用伪代码描述算法就是采用一种类似于程序设计语言的代码来表示算法。如红绿灯“倒计时15s”的算法用伪代码描述如下:
泡茶烧水 输出两个数中的最大数 倒计时15s
任务:观察三个算法的流程图,分析得出对应的算法结构,完成下表。
算法 | 算法结构 |
泡茶烧水 | |
输出两个数中的最大数 | |
倒计时15s |
总结算法的三大结构:1._____________2.___________3.___________
微课:算法的三种结构的特点
在完成“自助式人行过街红绿灯”的问题分析和功能分解之后,对各功能进行算法设计,并用流程图的方式描述出来。
知识点及能力 | 学生自评 | 小组互评 |
算法的概念及特征 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
算法的三种描述方式 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
算法的三种基本结构 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
小组讨论勇于发表意见 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
梳理并综合讨论观点 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |
实践操作能力 | 【1】【2】【3】【4】 | 【1】【2】【3】【4】 |