算法的含义、程序框图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
普通高中课程标准实验教科书—数学[人教版]
高三新数学第一轮复习教案(讲座15)—算法的含义、程序框图
一.课标要求:
1.通过对解决具体问题过程与步骤的分析(如,二元一次方程组求解等问题),体会算法的思想,了解算法的含义;
2.通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程。在具体问题的解决过程中(如,三元一次方程组求解等问题),理解程序框图的三种基本逻辑结构:顺序、条件分支、循环。
二.命题走向
算法是高中数学课程中的新内容,本章的重点是算法的概念和算法的三种逻辑结构。
预测2007年高考对本章的考察是:以选择题或填空题的形式出现,分值在5分左右,考察的热点是算法的概念。
三.要点精讲
1.算法的概念
(1)算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等。
在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
(2)算法的特征:①确定性:算法的每一步都应当做到准确无误、“不重不漏”。“不重”是指不是可有可无的、甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务。
②逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣。分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续。③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行。
(3)算法的描述:自然语言、程序框图、程序语言。
2.程序框图
(1)程序框图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形;
(2)构成程序框的图形符号及其作用
(3)程序框图的构成
一个程序框图包括以下几部分:实现不同算法功能的相对应的程序框;带箭头的流程线;程序框内必要的说明文字。
3.几种重要的结构 (1)顺序结构
顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。它是由若干个依次执行的步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
见示意图和实例:
顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤。如在示意图中,A 框和B 框是依次执行的,只有在执行完A 框指定的操
示意图
作后,才能接着执行B 框所指定的操作。
(2)条件结构
如下面图示中虚线框内是一个条件结构,此结构中含有一个判断框,算法执行到此判断给定的条件P 是否成立,选择不同的执行框(A 框、B 框)。无论P 条件是否成立,只能执行A 框或
B 框之一,不可能既执行A 框又执行B 框,也不可能A 框、B 框都不执行。A 框或B 框中可以有一个是空的,即不执行任何操作。
见示意图
(3)循环结构
在一些算法中要求重复执行同一操作的结构称为循环结构。即从算法某处开始,按照一定条件重复执行某一处理过程。重复执行的处理步骤称为循环体。
循环结构有两种形式:当型循环结构和直到型循环结构。
①当型循环结构,如左下图所示,它的功能是当给定的条件P 成立时,执行A 框,A 框执行完毕后,返回来再判断条件P 是否成立,如果仍然成立,返回来再执行A 框,如此反复执行A 框,直到某一次返回来判断条件P 不成立时为止,此时不再执行A 框,离开循环结构。继续执行下面的框图。
②直到型循环结构,如右下图所示,它的功能是先执行重复执行的A 框,然后判断给定的条件P 是否成立,如果P 仍然不成立,则返回来继续执行A 框,再判断条件P 是否成立。以次重复操作,直到某一次给定的判断条件P 时成立为止,此时不再返回来执行A 框,离开循环结构。继续执行下面的框图。
见示意图
四.典例解析
题型1:算法概念
例1.下列说法正确的是( )
当型循环结构 直到型循环结构
A.算法就是某个问题的解题过程;
B.算法执行后可以产生不同的结果;
C.解决某一个具体问题算法不同结果不同;
D.算法执行步骤的次数不可以为很大,否则无法实施。
解析:答案为选项B;选项B,例如:判断一个整数是否为偶数,结果为“是偶数”和“不是偶数”两种;选项A,算法不能等同于解法;选项C,解决某一个具体问题算法不同结果应该相同,否则算法构造的有问题;选项D,算法可以为很多次,但不可以无限次。
点评:算法一般是机械的,有时需要进行大量的重复计算。只要按部就班去做,总能算出结果。通常把算法过程称为“数学机械化”。数学机械化的最大优点是它可以借助计算机来完成;实际上处理任何问题都需要算法。如:中国象棋有中国象棋的棋谱、走法、胜负的评判准则;而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;再比如申请出国有一系列的先后手续,购买物品也有相关的手续……。
例2.下列语句中是算法的个数为()
①从济南到巴黎:先从济南坐火车到北京,再坐飞机到巴黎;
②统筹法中“烧水泡茶”的故事;
③测量某棵树的高度,判断其是否是大树;
④已知三角形的一部分边长和角,借助正余弦定理求得剩余的边角,再利用三角形的面积公式求出该三角形的面积。
A.1 B.2 C.3 D.4
解析:正确选项为C,③中我们对“树的大小”没有明确的标准,无法完成任务,不是有效的算法构造。①中,勾画了从济南到巴黎的行程安排,完成了任务;②中,节约时间,烧水泡茶完成了任务;④中,纯数学问题,借助正、余弦定理解三角形,进而求出三角形的面积。
点评:算法过程要做到能一步一步的执行,每一步执行的操作,必须确切,不能含混不清,且在有限步后的必须得到问题的结果。
题型2:经典算法
例3.一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量就会吃羚羊。该人如何将动物转移过河?请设计算法?
解析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势,具体算法如下:
算法步骤:
第一步:人带两只狼过河,并自己返回;
第二步:人带一只狼过河,自己返回;
第三步:人带两只羚羊过河,并带两只狼返回;