- 1 -第1讲 算法的概念与程序框图★知识梳理★1.算法:可以用计算机来解决的某一类问题的程序或步骤.2.算法中的程序和步骤必须是明确和有效的,而且能够在有限步之内完成.3.算法具有概括性(能解决一类问题),确切性(每一步操作的内容和顺序必须是明确的),有穷性(必须在有限步内结束并返回一个结果),不唯一性(一个问题可以有多个算法,算法有优劣之分),普遍性(很多具体的问题,都可以设计合理的算法去解决).4.程序框图又称流程图,是一种用规定的图形,指向线及文字说明来准确地、直观地表示算法的图形;5.算法的基本逻辑结构(顺序结构、条件结构和循环结构) ①顺序结构表示语句和语句之间,框与框之间是按顺序进行的;②条件结构是需要先根据条件作出判断,再决定执行哪一种操作的结构;③循环结构是需要反复执行某一处理步骤的结构,分为当型(WHILE 型)和直到型(UNTIL 型),当型(WHILE 型)循环是指在每次执行循环体前对控制循环条件进行判断,当条件满足时执行循环体,不满足时停止,直到型(UNTIL 型)循环是先执行一次循环体,然后对控制循环条件进行判断,当条件不满足时执行循环体,满足则停止.★重难点突破★1.重点:理解程序框图的三种基本逻辑结构,掌握三种逻辑结构在程序框图中的体现和特点.2.难点:绘制简单实际问题的流程图,正确理解各种算法语句的实际意义.3.重难点:设计算法时要综合考虑问题中可能涉及的各种情况:必须能解决一类问题,并且能重复使用;算法过程要一步一步执行,每一步执行的操作,必须确切,不能含糊不清,而且在有限步后得出结果.条件结构主要用在一些需要依据条件进行判断的算法中,如分段函数的求值、参数的讨论等.循环结构主要用在一些有规律的重复计算的算法中,如累加求和、累乘求积等.★热点考点题型探析★考点一 算法与程序框图 题型1 对算法阅读能力的考查【例1】一个算法如下: 第一步:计算244ac b m a-=;第二步:若0>a ,输出最小值m ; 第三步:若0<a ,输出最大值m .已知3,2,1===c b a ,则运行以上步骤输出的结果为【解题思路】只要按照算法的含义有步骤地描述解决的过程,便可得到该题的结果. 【解析】本题算法用于求二次函数2(0)y ax bx c a =++≠的最值. 故输出最小值2.【名师指引】把解决该问题的步骤进行呈现就是算法的思想.题型2 对程序框图阅读能力的考查【例2】写出图⑴的程序框图的运行结果.=S . 【解题思路】只要按照程序框图的箭头有步骤地计算,可得该题的结果. 【解析】本题程序框图用于求.252442=+=S ∴.25=S【名师指引】正确理解程序框图及算法是解题的关键.开始b=4输出S a=2 结束(1)- 2 -题型3 算法和程序框图的设计【例3】试写出寻找满足条件1000321>++++n 的最小正整数 n 的算法,并画出相应的算法程序框图.【解题思路】由于1000是一个较大的数,用猜的办法不可取,可采用循环 结构设计算法【解析】算法如下:第一步:p 取值0; 第二步:i 取值0;第三步:用1+i 的值代替p ;第四步:用i p +的结果代替i ;第五步:如果1000>p ,则输出i ;否则执行第六步 第六步:回到第三步,重新执行第三步,第四步,第五步.相应的算法程序框图如图⑵所示.【名师指引】把解决该问题的步骤进行呈现,设计算法,按要求画出 相应的程序框图.【新题导练】 1.一个算法如下:第一步:S 取值i ,0取值1;第二步:若i 不大于10,则执行下一步;否则执行第六步; 第三步:计算i S +且将结果代替i ; 第四步:用2+i 结果代替i ; 第五步:转去执行第二步;第六步:输出.S 则运行以上步骤输出的结果为 . 【解析】25.此算法用于计算.2597531=++++ 2.写出图⑶的程序框图的运行结果:若8=R ,则=a .开始 输入Ra=2b输出a结束 (3)Y 开始 P=0i=0i=i+1 p=p+ip>1000?输出i结束N图(2) 图(4)开始输出N结束- 3 -【解析】.422,24,8=⨯====a b R ∴.4=a3.某工厂2008年的生产总值100万元,技术革新后预计以后每年的生产总值比上一年增加5%,问最早需要哪一年年生产总值超过200万元.写出计算的一个算法并画出相应的程序框图.【解析】依题意知第n 年后生产总值的计算公式为na )05.01(200+=,此时为)2008(n +年. 算法如下:第一步:05.0,100,0===r a n ; 第二步:ar T =(计算年增量); 第三步: T a a +=(计算年产值);第四步:如果200≤a ,那么1+=n n ,重复执行第二步; 第五步:n N +=2008;第六步:输出N . 程序框图如图⑷所示.考点2 基本逻辑结构的运用 题型1 条件分支结构的运用【例4】已知⎪⎩⎪⎨⎧<=>-=0,20,00,2x x x y ,写出该函数函数值的算法及程序框图.【解题思路】求分段函数的函数值问题,可用条件分支结构.【解析】算法如下:第一步:输入x ; 第二步:如果0>x ,那么使2-=y ,如果0<x ,那么使2=y ; 第三步:输出函数值y .程序框图如图(5)所示:【名师指引】条件分支结构的运用与数学中的分类讨论有关.设计算法时,哪一步要分类讨论,哪一步就需要用条件分支结构.开始输出y结束(6)是否开始输出y输入x结束y=2y=0y= -2 (5)- 4 -题型2 循环结构的运用【例5】已知1)(3-=x x f ,将区间[]10,010等分,画出求各等分点及端点函数值的程序框图.【解题思路】将区间[]10,010等分,得11个数:.10,9,8,7,6,5,4,3,2,1,0引入变量i ,从0开始,每算一个函数值,i 的值就增加1,直到10=i 为止.故可用循环结构设计算法.【解析】程序框图如图⑹所示:【名师指引】对于这种有规律的计算问题,一般可采用循环结构设计算法.题型3 顺序结构的运用【例6】阅读如图⑺流程图,则输出的结果是 .【解题思路】顺序结构表示语句和语句之间,框与框之间是按顺序进行的. 【解析】2215y =⨯+=,35213b =⨯-=,∴结果是.13【名师指引】对于这种顺序结构的计算问题,算法过程要一步一步按顺序执行. 【新题导练】4.阅读图8的流程图,若输入的c b a ,,分别是75,32,21, 则输出的c b a ,,分别是【解析】21,75,32,21x a c b ====5.阅读如图⑼流程图,若输入8=x ,则输出的结果是 . 【解析】.333,38log2=⨯===p y ∴结果是.36.如图⑽的程序框图,则输出的数是 .【解析】49(298)249824502sum ⨯+=+++==开始结束 输入a,b,cx=a a=cc=bb=x输出a,b,c(8)开始结束输出(7)否是 开始结束 输出sumi =2,sum=0 sum=sum+ii=i+2(10)(9)开始输入x输出p开始- 5 -★ 抢 分 频 道 ★基础巩固训练1.下列结论正确的是( )A .一个程序的算法步骤是可逆的B .一个算法可以无止境地运算下去C .完成一件事情的算法有且只有一种D .设计算法要本着简单方便的原则【解析】D .2.下面对算法描述正确的一项是( )A .算法只能用自然语言来描述B .算法只能用图形方式来表示C .同一问题可以有不同的算法D .同一问题的算法不同,结果必然不同 【解析】C .算法的特点:有穷性,确定性,顺序性与正确性,不唯一性,普遍性 3.下列说法不正确的是( ) A .任何一个算法一定含有顺序结构B .任何一个算法都可能由顺序结构、条件结构、循环结构构成C .循环结构中一定包含条件结构D .条件结构中一定包含循环结构 【解析】D .4.计算下列各式中的S 值,能设计算法求解的是( ) ①30321++++= S ;② +++++=30321S ; ③)(321+∈++++=N n n S .A .①②B .①③C .②③D .①②③【解析】B . ②为求无限项的和,而算法要求必须在有限步之内完成. 5. 程序框图5中,若3=y 时,输出的结果为 .【解析】26.已知6)(-=x x f ,以下程序框图6表示的是给定x 的值,求其函数值的算法.请将该程序框图补充完整.其中①处应填 ,②处应填 . 【解析】?6≤x 6-=x y开始输入x①②输出yy=6-x是否输出x输入y开始- 6 -综合拔高训练7.设计算法求50491431321211⨯++⨯+⨯+⨯ 的值,要求画出程序框图.【解析】这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构 实现这一算法.程序框图如图7所示:8.设计一个计算100个数的平均数的算法的程序框图.【解析】解法一:用当型循环(如图8):解法二:用直到型(如图9):开始i =1 sum=0开始i =1 sum=0否 是开始 输出S结束第7题- 7 -。