算法的含义、程序框图
- 格式:doc
- 大小:112.00 KB
- 文档页数:13
高考总复习:算法与程序框图【考纲要求】1.算法的含义、程序框图(1)了解算法的含义,了解算法的思想;(2)理解程序框图的三种基本逻辑结构:顺序、条件、循环。
2.基本算法语句理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义。
【知识网络】【考点梳理】考点一、算法1.算法的概念(1)古代定义:指的是用阿拉伯数字进行算术运算的过程。
(2)现代定义:算法通常是指按照一定规则解决某一类问题的明确和有限的步骤。
(3)应用:算法通常可以编成计算机程序,让计算机执行并解决问题。
2.算法的特征:①指向性:能解决某一个或某一类问题;②精确性:每一步操作的内容和顺序必须是明确的;算法的每一步都应当做到准确无误,从开始的“第一步”直到“最后一步”之间做到环环相扣,分工明确.“前一步”是“后一步”的前提,“后一步”是“前一步”的继续.③有限性:必须在有限步内结束并返回一个结果;算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行.④构造性:一个问题可以构造多个算法,算法有优劣之分。
3.算法的表示方法:(1) 用自然语言表示算法: 优点是使用日常用语, 通俗易懂;缺点是文字冗长, 容易出现歧义;(2) 用程序框图表示算法:用图框表示各种操作,优点是直观形象, 易于理解。
要点诠释:泛泛地谈算法是没有意义的,算法一定以问题为载体。
考点二:程序框图1. 程序框图的概念:程序框图又称流程图,是最常用的一种表示法,它是描述计算机一步一步完成任务的图表,直观地描述程序执行的控制流程,最便于初学者掌握。
2.程序框图常用符号:连接点用于连接另一页或另一部分的框图注释框框中内容是对某部分流程图做的解释说明3.画程序框图的规则:(1)使用标准的框图的符号;(2)框图一般按从上到下、从左到右的方向画;(3)除判断框图外,大多数框图符号只有一个进入点和一个退出点。
算法与程序框图一、基础知识1.算法(1)算法通常是指按照一定规则解决某一类问题的明确和有限的步骤. (2)应用:算法通常可以编成计算机程序,让计算机执行并解决问题. 2.程序框图程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形. 3.三种基本逻辑结构 (1)顺序结构(2)条件结构(3)循环结构三种基本逻辑结构的适用情境(1)顺序结构:要解决的问题不需要分类讨论. (2)条件结构:要解决的问题需要分类讨论.(3)循环结构:要解决的问题要进行许多重复的步骤,且这些步骤之间有相同的规律.考点一 顺序结构和条件结构[例1] (2019·沈阳质检)已知一个算法的程序框图如图所示,当输出的结果为0时,输入的实数x 的值为( )A .-3B .-3或9C .3或-9D .-3或-9[解析] 当x ≤0时,y =⎝⎛⎭⎫12x -8=0,x =-3;当x >0时,y =2-log 3x =0,x =9.故x =-3或x =9,选B.[答案] B[例2] 某程序框图如图所示,现输入如下四个函数,则可以输出的函数为( )A .f (x )=cos x x ⎝⎛⎭⎫-π2<x <π2,且x ≠0 B .f (x )=2x -12x +1C .f (x )=|x |xD .f (x )=x 2ln(x 2+1)[解析] 由程序框图知该程序输出的是存在零点的奇函数,选项A 、C 中的函数虽然是奇函数,但在给定区间上不存在零点,故排除A 、C.选项D 中的函数是偶函数,故排除D.选B.[答案] B[解题技法] 顺序结构和条件结构的运算方法(1)顺序结构是最简单的算法结构,语句与语句之间、框与框之间是按从上到下的顺序进行的.解决此类问题,只需分清运算步骤,赋值量及其范围进行逐步运算即可.(2)条件结构中条件的判断关键是明确条件结构的功能,然后根据“是”的分支成立的条件进行判断.(3)对于条件结构,无论判断框中的条件是否成立,都只能执行两个分支中的一个,不能同时执行两个分支.[题组训练]1.半径为r 的圆的面积公式为S =πr 2,当r =5时,计算面积的流程图为( )解析:选D 因为输入和输出框是平行四边形,故计算面积的流程图为D. 2.运行如图所示的程序框图,可输出B =______,C =______.解析:若直线x+By+C=0与直线x+3y-2=0平行,则B=3,且C≠-2,若直线x+3y+C=0与圆x2+y2=1相切,则|C|12+(3)2=1,解得C=±2,又C≠-2,所以C=2.答案:3 2考点二循环结构考法(一)由程序框图求输出(输入)结果[例1](2018·天津高考)阅读如图所示的程序框图,运行相应的程序,若输入N的值为20,则输出T的值为()A.1B.2C.3 D.4[解析]输入N的值为20,第一次执行条件语句,N=20,i =2,Ni =10是整数,∴T =0+1=1,i =3<5;第二次执行条件语句,N =20,i =3,N i =203不是整数,∴i =4<5;第三次执行条件语句,N =20,i =4,Ni =5是整数,∴T =1+1=2,i =5,此时i ≥5成立,∴输出T =2. [答案] B[例2] (2019·安徽知名示范高中联考)执行如图所示的程序框图,如果输出的n =2,那么输入的 a 的值可以为( )A .4B .5C .6D .7[解析] 执行程序框图,输入a ,P =0,Q =1,n =0,此时P ≤Q 成立,P =1,Q =3,n =1,此时P ≤Q 成立,P =1+a ,Q =7,n =2.因为输出的n 的值为2,所以应该退出循环,即P >Q ,所以1+a >7,结合选项,可知a 的值可以为7,故选D.[答案] D[解题技法] 循环结构的一般思维分析过程 (1)分析进入或退出循环体的条件,确定循环次数.(2)结合初始条件和输出结果,分析控制循环的变量应满足的条件或累加、累乘的变量的表达式.(3)辨析循环结构的功能. 考法(二) 完善程序框图[例1] (2018·武昌调研考试)执行如图所示的程序框图,如果输入的a 依次为2,2,5时,输出的s 为17,那么在判断框中可以填入( )A .k <n?B .k >n?C .k ≥n?D .k ≤n?[解析] 执行程序框图,输入的a =2,s =0×2+2=2,k =1;输入的a =2,s =2×2+2=6,k =2;输入的a =5,s =2×6+5=17,k =3,此时结束循环,又n =2,所以判断框中可以填“k >n ?”,故选B.[答案] B[例2] (2018·全国卷Ⅱ)为计算S =1-12+13-14+…+199-1100,设计了如图所示的程序框图,则在空白框中应填入( )A .i =i +1B .i =i +2C .i =i +3D .i =i +4[解析] 由题意可将S 变形为S =⎝⎛⎭⎫1+13+…+199-⎝⎛⎭⎫12+14+…+1100,则由S =N -T ,得N =1+13+…+199,T =12+14+…+1100.据此,结合N =N +1i ,T =T +1i +1易知在空白框中应填入i =i +2.故选B.[答案] B[解题技法] 程序框图完善问题的求解方法(1)先假设参数的判断条件满足或不满足;(2)运行循环结构,一直到运行结果与题目要求的输出结果相同为止; (3)根据此时各个变量的值,补全程序框图.[题组训练]1.(2018·凉山质检)执行如图所示的程序框图,设输出的数据构成的集合为A ,从集合A 中任取一个元素a ,则函数y =x a ,x ∈[0,+∞)是增函数的概率为( )A.47B.45C.35D.34解析:选C 执行程序框图,x =-3,y =3;x =-2,y =0;x =-1,y =-1;x =0,y =0;x =1,y =3;x =2,y =8;x =3,y =15;x =4,退出循环.则集合A 中的元素有-1,0,3,8,15,共5个,若函数y =x a ,x ∈[0,+∞)为增函数,则a >0,所以所求的概率为35.2.(2019·珠海三校联考)执行如图所示的程序框图,若输出的n 的值为4,则p 的取值范围是( )A.⎝⎛⎦⎤34,78B.⎝⎛⎭⎫516,+∞C.⎣⎡⎭⎫516,78D.⎝⎛⎦⎤516,78解析:选A S =0,n =1;S =12,n =2;S =12+122=34,n =3;满足条件,所以p >34,继续执行循环体;S =34+123=78,n =4;不满足条件,所以p ≤78.输出的n 的值为4,所以34<p ≤78,故选A.3.(2019·贵阳适应性考试)某程序框图如图所示,若该程序运行后输出的值是137,则整数a 的值为( )A .6B .7C .8D .9解析:选A 先不管a 的取值,直接运行程序.首先给变量S ,k 赋值,S =1,k =1,执行S =S +1k (k +1),得S =1+11×2,k =2;执行S =1+11×2+12×3,k =3;……继续执行,得S =1+11×2+12×3+…+1k (k +1)=1+⎝⎛⎭⎫1-12+⎝⎛⎭⎫12-13+…+⎝⎛⎭⎫1k -1k +1=2-1k +1,由2-1k +1=137得k =6,所以整数a =6,故选A.考点三 基本算法语句[典例] 执行如图程序语句,输入a =2cos 2 019π3,b =2tan 2 019π4,则输出y 的值是( )A .3B .4C .6D .-1[解析] 根据条件语句可知程序运行后是计算y =⎩⎪⎨⎪⎧a (a +b ),a <b ,a 2-b ,a ≥b ,且a =2cos 2 019π3=2cos π=-2,b =2tan 2 019π4=2tan 3π4=-2.因为a ≥b ,所以y =a 2-b =(-2)2-(-2)=6, 即输出y 的值是6. [答案] C[变透练清]1. 执行如图所示的程序,输出的结果是________.i =11S =1DOS =S*ii =i -1LOOP UNTIL i<9PRINT S END解析:程序反映出的算法过程为 i =11⇒S =11×1,i =10; i =10⇒S =11×10,i =9; i =9⇒S =11×10×9,i =8;i =8<9退出循环,执行“PRINT S ”. 故S =990. 答案:9902.阅读如图所示的程序.a 的值是________. 解析:由题意可得程序的功能是计算并输出a =⎩⎪⎨⎪⎧2+a ,a >2,a ×a ,a ≤2的值, 当a >2时,由2+a =9得a =7; 当a ≤2时,由a 2=9得a =-3, 综上知,a =7或a =-3. 答案:-3或7[课时跟踪检测]1.(2019·湖北八校联考)对任意非零实数a ,b ,定义a *b 的运算原理如图所示,则(log222)*⎝⎛⎭⎫18-23=( )A .1B .2C .3D .4解析:选A 因为log222=3,⎝⎛⎭⎫18-23=4,3<4,所以输出4-13=1,故选A. 2.执行如图所示的程序框图,则输出的x ,y 分别为( )A .90,86B .94,82C .98,78D .102,74解析:选C 第一次执行循环体,y =90,s =867+15,不满足退出循环的条件,故x =90;第二次执行循环体,y =86,s =907+433,不满足退出循环的条件,故x =94;第三次执行循环体,y =82,s =947+413,不满足退出循环的条件,故x =98;第四次执行循环体,y =78,s =27,满足退出循环的条件,故x =98,y =78.3.(2018·云南民族大学附属中学二模)执行如图所示的程序框图,若输出的k 的值为6,则判断框内可填入的条件是( )A .s >12?B .s >710?C .s >35?D .s >45?解析:选B s =1,k =9,满足条件;s =910,k =8,满足条件;s =45,k =7,满足条件;s =710,k =6,不满足条件.输出的k =6,所以判断框内可填入的条件是“s >710?”.故选B.4.(2019·合肥质检)执行如图所示的程序框图,如果输出的k 的值为3,则输入的a 的值可以是( )A .20B .21C .22D .23解析:选A 根据程序框图可知,若输出的k =3,则此时程序框图中的循环结构执行了3次,执行第1次时,S =2×0+3=3,执行第2次时,S =2×3+3=9,执行第3次时,S =2×9+3=21,因此符合题意的实数a 的取值范围是9≤a <21,故选A.5.(2019·重庆质检)执行如图所示的程序框图,如果输入的x =0,y =-1,n =1,则输出x ,y 的值满足( )A .y =-2xB .y =-3xC .y =-4xD .y =-8x解析:选C 初始值x =0,y =-1,n =1,x =0,y =-1,x 2+y 2<36,n =2,x =12,y=-2,x 2+y 2<36,n =3,x =32,y =-6,x 2+y 2>36,退出循环,输出x =32,y =-6,此时x ,y 满足y =-4x ,故选C.6.(2018·南宁二中、柳州高中联考)执行如图所示的程序框图,若输出的结果s =132,则判断框中可以填( )A.i≥10? B.i≥11?C.i≤11? D.i≥12?解析:选B执行程序框图,i=12,s=1;s=12×1=12,i=11;s=12×11=132,i =10.此时输出的s=132,则判断框中可以填“i≥11?”.7.(2019·漳州八校联考)执行如图所示的程序,若输出的y的值为1,则输入的x的值为() INPUT xIF x>=1THENy=x2ELSEy=-x2+1END IFPRINT yENDA.0 B.1C.0或1 D.-1,0或1解析:选C当x≥1时,由x2=1得x=1或x=-1(舍去);当x<1时,由-x2+1=1得x=0.∴输入的x的值为0或1.)8.执行如图所示的程序框图,若输入的n=4,则输出的s=(C.20 D.35解析:选C执行程序框图,第一次循环,得s=4,i=2;第二次循环,得s =10,i =3; 第三次循环,得s =16,i =4; 第四次循环,得s =20,i =5.不满足i ≤n ,退出循环,输出的s =20.9.(2018·洛阳第一次统考)已知某算法的程序框图如图所示,则该算法的功能是( )A .求首项为1,公差为2的等差数列的前2 018项和B .求首项为1,公差为2的等差数列的前2 019项和C .求首项为1,公差为4的等差数列的前1 009项和D .求首项为1,公差为4的等差数列的前1 010项和解析:选D 由程序框图得,输出的S =(2×1-1)+(2×3-1)+(2×5-1)+…+(2×2 019-1),可看作数列{2n -1}的前2 019项中所有奇数项的和,即首项为1,公差为4的等差数列的前1 010项和.故选D.10.(2018·郑州第一次质量测试)执行如图所示的程序框图,若输出的结果是7,则判断框内m 的取值范围是( )A .(30,42]B .(30,42)C .(42,56]D .(42,56)解析:选A k =1,S =2,k =2;S =2+4=6,k =3;S =6+6=12,k =4;S =12+8=20,k =5;S =20+10=30,k =6;S =30+12=42,k =7,此时不满足S =42<m ,退出循环,所以30<m ≤42,故选A.11.(2019·石家庄调研)20世纪70年代,流行一种游戏——角谷猜想,规则如下:任意写出一个自然数n ,按照以下的规律进行变换,如果n 是奇数,则下一步变成3n +1;如果n 是偶数,则下一步变成n2.这种游戏的魅力在于无论你写出一个多么庞大的数字,最后必然会落在谷底,更准确地说是落入底部的4-2-1循环,而永远也跳不出这个圈子,下列程序框图就是根据这个游戏而设计的,如果输出的i 值为6,则输入的n 值为( )A .5或16B .16C .5或32D .4或5或32解析:选C 若n =5,执行程序框图,n =16,i =2;n =8,i =3;n =4,i =4;n =2,i =5;n =1,i =6,结束循环,输出的i =6.若n =32,执行程序框图,n =16,i =2;n =8,i =3;n =4,i =4;n =2,i =5;n =1,i =6,结束循环,输出的i =6.当n =4或16时,检验可知不正确,故输入的n =5或32,故选C.12.(2018·贵阳第一学期检测)我国明朝数学家程大位著的《算法统宗》里有一道闻名世界的题目:“一百馒头一百僧,大僧三个更无争.小僧三人分一个,大小和尚各几丁?”如图所示的程序框图反映了对此题的一个求解算法,则输出的n 的值为( )A .20B .25C .30D .35解析:选B 法一:执行程序框图,n =20,m =80,S =60+803=8623≠100;n =21,m =79,S =63+793=8913≠100;n =22,m =78,S =66+783=92≠100;n =23,m =77,S =69+773=9423≠100;n =24,m =76,S =72+763=9713≠100;n =25,m =75,S =75+753=100,退出循环.所以输出的n =25.法二:设大和尚有x 个,小和尚有y 个, 则⎩⎪⎨⎪⎧x +y =100,3x +13y =100,解得⎩⎪⎨⎪⎧x =25,y =75, 根据程序框图可知,n 的值即大和尚的人数,所以n =25.13.已知函数y =lg|x -3|,如图所示程序框图表示的是给定x 值,求其相应函数值y 的算法.请将该程序框图补充完整.其中①处应填________,②处应填________.解析:由y =lg|x -3|=⎩⎪⎨⎪⎧lg (x -3),x >3,lg (3-x ),x <3及程序框图知,①处应填x <3?,②处应填y=lg(x -3).答案:x <3? y =lg(x -3)14.执行如图所示的程序框图,若输入的N =20,则输出的S =________.解析:依题意,结合题中的程序框图知,当输入的N =20时,输出S 的值是数列{2k -1}的前19项和,即19(1+37)2=361.答案:36115.执行如图所示的程序框图,则输出的λ是________.解析:依题意,若λa +b 与b 垂直,则有(λa +b )·b =4(λ+4)-2(-3λ-2)=0,解得λ=-2;若λa +b 与b 平行,则有-2(λ+4)=4(-3λ-2),解得λ=0.结合题中的程序框图可知,输出的λ是-2.答案:-216.执行如图所示的程序框图,如果输入的x ,y ∈R ,那么输出的S 的最大值为________.解析:当条件x ≥0,y ≥0,x +y ≤1不成立时,输出S 的值为1,当条件x ≥0,y ≥0,x +y ≤1成立时,输出S =2x +y ,下面用线性规划的方法求此时S 的最大值.作出不等式组⎩⎪⎨⎪⎧x ≥0,y ≥0,x +y ≤1表示的平面区域如图中阴影部分所示,由图可知当直线S =2x +y 经过点M (1,0)时S 最大,其最大值为2×1+0=2,故输出S 的最大值为2.答案:2。
第一章1.1算法与程序边框图1.算法的概念(1)算法概念的理解①算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.②算法与一般意义上具体问题的解法既有联系,又有区别,它们之间是一般和特殊的关系,也是抽象与具体的关系.算法的获得要借助一般意义上具体问题的求解方法,而任何一个具体问题都可以利用这类问题的一般算法来解决.③算法一方面具有具体化、程序化、机械化的特点,同时又有高度的抽象性、概括性、精确性,所以算法在解决问题中更具有条理性、逻辑性的特点.(2)算法的四个特征:概括性、逻辑性、有穷性、不唯一性①概括性:写出的算法必须能解决某一类问题,并且能够重复使用.②逻辑性:算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,而且每一步都是正确无误的,从而组成了一个有着很强逻辑性的步骤序列.③有穷性:算法有一个清晰的起始步,终止步是表示问题得到解答或指出问题没有解答,所有序列必须在有限个步骤之内完成,不能无停止地执行下去.④不唯一性:求解某一个问题的算法不一定只有唯一的一个,可以有不同的算法,当然这些算法有简繁之分、优劣之别.(3)常见的算法类型①数值性计算问题.如:解方程(或方程组)、解不等式(或不等式组)、利用公式求值、累加或累乘等问题,可通过相应的数学模型借助一般的数学计算方法,分解成清晰的步骤,使之条理化.②非数值性计算问题.如:判断、排序、变量变换等需先建立过程模型,再通过模型进行算法设计与描述.注意:(ⅰ)注意算法与解法的区别:算法是解决一类问题所需要的程序或步骤的统称;而解法是解决某一个具体问题的过程或步骤,是具体的解题过程.(ⅱ)设计算法时要尽量选取简捷、快速、高效的解决问题的算法.对一个具体的问题,我们要对解决问题的途径进行透彻的研究,找出最优算法,做到“先思考后处理”.2.程序框图(1)程序框图又称为流程图,是一种用程序框、流程线及文字说明来准确、直观地表示算法的图形.(2)用程序框图表示算法,具有直观、形象的特点,能更清楚地展现算法的逻辑结构.(3)程序框图主要由程序框和流程线组成.基本的程序框有终端框、输入框、输出框、处理框、判断框,其中终端框是任何流程图不可缺少的,而输入、输出可以用在算法中任何需要输入、输出的位置.(4)画程序框图的规则①使用标准的框图符号;②框图一般按从上到下、从左到右的方向画;③终端框(起止框)是任何程序框图必不可缺少的,表示程序的开始和结束;④除判断框外,大多数程序框图符号只有一个进入点和一个退出点,判断框是具有超过一个退出点的唯一符号;⑤程序框图符号框内的文字要简洁精炼.注意:(ⅰ)每一种程序框图的图形符号都有特定的含义,在画程序框图时不能混用,并且所用图形符号一定要标准规范,起始框只有一条流出线(没有流入线),终止框只有一条流入线(没有流出线),输入、输出框只有一条流入线和一条流出线,判断框有一条流入线和两条流出线.(ⅱ)如果一个程序框图由于纸面等原因需要分开画,要在断开处画上连接点,并标出连接的号码.(ⅲ)判断框是“是”与“否”两分支的判断,有且仅有两个结果.(ⅳ)一般地,画程序框图时,先用自然语言编写算法,然后再画程序框图.3.算法的三种基本结构(1)顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的基本结构,其基本结构形式如图所示,其中A、B两框所指定的操作是依次执行的.顺序结构中所表达的逻辑关系是自然串行、上下连贯、线性排列的.(2)条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构.条件结构用于进行逻辑判断,并根据判断的结果进行不同的处理.条件结构必含判断框.条件结构的结构形式如图2所示,此结构中包含一个判断框,算法执行到此判断框给定的条件P时,根据条件P是否成立选择不同的执行框(A框或B框).注意:无论P是否成立,下一步只能执行A框或B框之一,不能A框和B框同时执行,也不能A、B两框都不执行,但A框和B框中可以有一个是空的,如图3.(3)循环结构:根据条件是否成立,以决定是否重复执行某些操作,在算法中要求重复执行同一操作的结构称为循环结构,重复执行的处理步骤称为循环体.根据执行情况及循环结束条件的不同可以分为当型循环(WHILE型)和直到型循环(UNTIL型).当型循环的特点是“先判断,后执行”,即先判断条件,当条件满足时,反复执行循环体,当条件不满足时退出循环(也就是说直到条件不满足时退出循环).如图4.直到型循环的特点是先执行一次循环体,再判断条件,当条件不满足时执行循环体,当条件满足时退出循环(即直到条件满足时退出循环),即“先执行,后判断”.如图5.当型循环可能一次也不执行循环体,而直到型循环至少要执行一次循环体.当型循环与直到型循环可以相互转化,条件互补.循环结构中常用的变量有计数变量、累加变量及累乘变量.计数变量用来记录某个事件发生的次数(即执行循环体的次数),累加变量用来计算数据之和,累乘变量用来计算数据之积.对于这些变量,开始一般要先赋初值,一般地,计数变量初值可设为0或1,累加变量初值设为0,累乘变量初值设为1.注意:(ⅰ)正确理解顺序结构的特点及适用条件是作出顺序结构图的关键.(ⅱ)画条件结构的程序框图要用到判断框,判断框有两个出口,根据不同的条件输出不同的信息,这些不同的信息必须全部写出.(ⅲ)只有有规律的,能重复进行的算法过程才能用循环结构.题型一算法设计写出能找出a 、b 、c 三个数中最小值的一个算法.解 第一步:输入a 、b 、c .并且假定min =a ;第二步:若b <min 成立,则用b 的值替换min ;否则直接执行下一步;第三步:若c <min 成立,则用c 的值替换min ,否则直接执行下一步;第四步:输出min 的值,结束.点评 本题的思路是:将min 定义为最小值,并把a 的值赋给min ,然后依次与b 、c 比较大小,遇到小的就替换min 的值,最后输出min 的值,这种方法可以推广到从多个不同的数中找出最大或最小的一个.题型二 条件结构的程序框图已知函数y =⎩⎪⎨⎪⎧ -1 (x >0),0 (x =0),1 (x <0).写出求该函数值的算法及程序框图.解 算法如下:第一步:输入x ;第二步:如果x >0,那么使y =-1,如果x =0,那么使y =0,如果x <0,那么使y =1; 第三步:输出函数值y .程序框图如图所示.点评 该函数是分段函数,当x 取不同范围内的值时,函数的表达式不同,因此当给出一个自变量x 的值时,也必须先判断x 的范围,然后确定利用哪一段的表达式求函数值,因为函数分了三段,所以判断框需要两个,即进行两次判断.求分段函数的函数值的程序框图,如果是分两段的函数只需引入一个判断框,如果是分三段的函数,至少需要引入两个判断框,分四段的函数要引入三个判断框,以此类推,至于判断框内的内容是没有顺序的,比如:本题中的两个判断框内的内容可以交换,但对应的下一图框中的内容或操作也必须相应地进行变化,比如本题的程序框图也可以画成如图1所示或如图2所示.图1图2题型三循环结构的程序框图看下面的问题:1+2+3+…+()>10 000,这个问题的答案不唯一,我们只要确定出满足条件的最小正整数n0,括号内填写的数只要大于或等于n0即可.试写出满足条件的最小正整数n0的算法并画出相应的程序框图.解算法如下:第一步:p=0;第二步:i=0;第三步:i=i+1;第四步:p=p+i;第五步:如果p>10 000,则输出i,算法结束.否则,执行第六步;第六步:回到第三步,重新执行第三步、第四步和第五步.该算法的程序框图如图所示.点评本题属于累加问题,代表了一类相邻两数的差为常数的求和问题的解法,需引入计数变量和累加变量,应用循环结构解决问题.在设计算法时前后两个加数相差1,则i=i +1,若相差2,则i=i+2,要灵活改变算法中的相应部分.另外需注意判断框内的条件的正确写出,直到型和当型循环条件不同,本题解法用的是直到型循环,用当型循环结构时判断框内条件应为p≤10 000.如图所示.题型四程序框图在生活中的应用72,91,58,63,84,88,90,55,61,73,64,77,82,94,60.要求将80分以上的同学的平均分求出来.画出程序框图.解用条件分支结构来判断成绩是否高于80分,用循环结构控制输入的次数,同时引进两个累加变量,分别计算高于80分的成绩的总和和人数.程序框图如图所示.构和循环结构相结合的算法.【例1】如图所示是某一算法的程序框图,根据该框图指出这一算法的功能.错解 求S =12+14+16+…+110的值. 错解辨析 本题忽略了计数变量与循环次数,没有明确循环体在循环结构中的作用,以及循环终止条件决定是否继续执行循环体.正解 在该程序框图中,S 与n 为两个累加变量,k 为计数变量,所以该算法的功能是求12+14+16+…+120的值. 【例2】 试设计一个求1×2×3×4×…×n 的值的程序框图.错解 程序框图如图所示.错解辨析 本题程序框图看似当型循环结构,我们应当注意的是,当型循环结构是当条件满足时执行循环体,而本题显然是误解了当型循环结构条件.正解 程序框图如图所示.乘变量t和计数变量i,这里t与i每一次循环,它们的值都在改变.1.(海南、宁夏高考)如果执行下面的程序框图,那么输出的S为()A.2 450 B.2 500 C.2 550 D.2 652答案 C解析当k=1,S=0+2×1;当k=2,S=0+2×1+2×2;当k=3,S=0+2×1+2×2+2×3;…当k=50,S=0+2×1+2×2+2×3+…+2×50=2 550.2.(济宁模拟)在如图的程序框图中,输出结果是()A.5 B.6C.13 D.10答案 D解析a=5时,S=1+5=6;a=4时,S=6+4=10;a=3时,终止循环,输出S=10.3.(广东高考)阅读下图的程序框图.若输入m=4,n=6,则输出a=________,i=________.答案12 3解析输入m=4,n=6,则i=1时,a=m×i=4,n不能整除4;i=2时,a=m×i=8,n不能整除8;i=3时,a=m×i=12,6能整除12.∴a=12,i=3.一、选择题1.一个完整的程序框图至少包含()A.终端框和输入、输出框B.终端框和处理框C.终端框和判断框D.终端框、处理框和输入、输出框答案 A解析一个完整的程序框图至少需包括终端框和输入、输出框.2.下列关于条件结构的说法中正确的是()A.条件结构的程序框图有一个入口和两个出口B.无论条件结构中的条件是否满足,都只能执行两条路径之一C .条件结构中的两条路径可以同时执行D .对于一个算法来说,判断框中的条件是惟一的答案 B解析 由条件结构可知:根据所给条件是否成立,只能执行两条途径之一.3.下列问题的算法适宜用条件结构表示的是( )A .求点P (-1,3)到直线l :3x -2y +1=0的距离B .由直角三角形的两条直角边求斜边C .解不等式ax +b >0 (a ≠0)D .计算100个数的平均数答案 C解析 条件结构是处理逻辑判断并根据判断进行不同处理的结构.只有C 中含有判断a 的符号,其余选项都不含逻辑判断.4.下列程序框图表示的算法是( )A .输出c ,b ,aB .输出最大值C .输出最小值D .比较a ,b ,c 的大小答案 B解析 根据流程图可知,此图应表示求三个数中的最大数.5.用二分法求方程的近似根,精确度为δ,用直到型循环结构的终止条件是( )A .|x 1-x 2|>δB .|x 1-x 2|<δC .x 1<δ<x 2D .x 1=x 2=δ答案 B解析 直到型循环结构是先执行、再判断、再循环,是当条件满足时循环停止,因此用二分法求方程近似根时,用直到型循环结构的终止条件为|x 1-x 2|<δ.二、填空题6.下边的程序框图(如下图所示),能判断任意输入的整数x 是奇数或是偶数.其中判断框内的条件是________.答案 m =0?解析 根据程序框图中的处理框和输出的结果,寻找判断框内的条件.由于当判断框是正确时输出的是“x 是偶数”,而判断框前面的处理框是x 除以2的余数,因此判断框应填“m =0?”.7.下图是计算1+13+15+…+199的程序框图,判断框应填的内容是________,处理框应填的内容是________.答案 i ≤99? i =i +2解析 由题意知,该算法从i =1开始到99结束,循环变量依次加2.8.完成下面求1+2+3+…+10的值的算法:第一步,S =1.第二步,i =2.第三步,S =S +i .第四步,i =i +1.第五步,________________________________________________________________________. 第六步,输出S .答案 如果i =11,执行第六步;否则执行第三步解析 本题是用自然语言来描述的算法,实际上第五步是一个判断条件,根据题意,是循环是否终止的条件,因此应该为如果i =11,执行第六步;否则执行第三步.三、解答题9.画出求11×2+12×3+13×4+…+199×100的值的程序框图. 解 这是一个累加求和问题,共99项相加,可设计一个计数变量,一个累加变量,用循环结构实现这一算法.程序框图如下图所示:10.写出解方程ax +b =0 (a 、b 为常数)的算法,并画出程序框图.解 算法如下:第一步,判断a 是否等于零,若a ≠0,执行第二步,若a =0,执行第三步;第二步,计算-b a ,输出“方程的解为-b a”; 第三步,判断b 是否等于零,若b =0,输出“有无数个解”的信息,若b ≠0,输出“方程无解”的信息.程序框图如图所示:探 究 驿 站11.画出求12+12+…+12(共6个2)的值的程序框图. 分析 本题看上去非常烦琐,尤其是对于2的位置处理,容易让人产生错觉.本题只要把含有2的式子分离开来,用A 代替12,即令A =12,则不难分析出分母可化为12+A的形式,且此结构重复出现.解 方法一 当型循环结构程序框图如图所示.方法二 直到型循环结构程序框图如图所示.12.给出以下10个数:5,9,80,43,95,73,28,17,60,36,要求把大于40的数找出来并输出.试画出该问题的程序框图.解程序框图如下图:趣味一题13.相传,古印度的舍罕王打算重赏国际象棋的发明者——宰相西萨·班·达依尔.于是,这位宰相跪在国王面前说:“陛下,请您在这张棋盘的第一个小格内,赏给我一粒麦子;在第二个小格内给两粒,第三格内给四粒,照这样下去,每一小格都比前一小格加一倍.陛下啊,把这样摆满棋盘上所有64格的麦粒,都赏给您的仆人罢!”国王慷慨地答应了宰相的要求,他下令将一袋麦子拿到宝座前.计数麦粒的工作开始了.第一格内放一粒,第二格两粒,第三格四粒……还没到第二十格,袋子已经空了.一袋又一袋的麦子被扛到国王面前来,但是,麦粒数一格接一格地增长得那么迅速,很快就可以看出,即使拿来全印度的小麦,国王也无法兑现他对宰相许下的诺言!请你画出一个程序框图来求需要的麦粒数.分析由题意,我们可以看出第一格内放一粒,第二格两粒,第三格四粒,就是往后每一格是前一格的2倍,这样一共需要的麦粒数就是1+2+22+…+262+263.从而可以得出这是一个累加求和问题,可以利用循环结构来设计算法,计数变量i从1到64循环64次,每个求和的数可用一个累乘变量表示.解程序框图:。
--普通高中课程标准实验教科书—数学[人教版]高三新数学第一轮复习教案(讲座15)—算法的含义、程序框图一.课标要求:1.通过对解决具体问题过程与步骤的分析(如,二元一次方程组求解等问题),体会算法的思想,了解算法的含义;2.通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程。
在具体问题的解决过程中(如,三元一次方程组求解等问题),理解程序框图的三种基本逻辑结构:顺序、条件分支、循环。
二.命题走向算法是高中数学课程中的新内容,本章的重点是算法的概念和算法的三种逻辑结构。
预测2007年高考对本章的考察是:以选择题或填空题的形式出现,分值在5分左右,考察的热点是算法的概念。
三.要点精讲1.算法的概念(1)算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等。
在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
(2)算法的特征:①确定性:算法的每一步都应当做到准确无误、“不重不漏”。
“不重”是指不是可有可无的、甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务。
②逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣。
分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续。
③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行。
(3)算法的描述:自然语言、程序框图、程序语言。
2.程序框图(1)程序框图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形;(2)构成程序框的图形符号及其作用(3)程序框图的构成一个程序框图包括以下几部分:实现不同算法功能的相对应的程序框;带箭头的流程线;程序框内必要的说明文字。
算法与程序框图知识图谱算法与程序框图知识精讲一.算法的概念1.算法的定义由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照一定规则,解决某一类问题的明确的和有限的步骤,称为算法.通常可以编成计算机程序,让计算机执行并解决问题.2.算法的特征:(1)有穷性:算法必须在执行有限步后结束,通常还理解为实际上能够容忍的合理限度;(2)确定性:算法的每一个步骤必须有确定的含义;(3)可行性:组成算法的每个步骤和操作必须是相当基本的,原则上都是能精确地执行的;(4)输入:有零个或多个输入;(5)输出:有一个或多个输出.二.算法的描述1.用自然语言;2.用数学语言;3.用算法语言(程序设计语言);4.用程序框图(流程图).三.程序框图的概念:用一些通用的图形符号构成的一张图来表示算法,称为程序框图(简称框图).1.常用图形符号:图形符号名称符号表示的意义起、止框框图的开始或结束输入、输出框数据的输入或者结果的输出处理框赋值、执行计算语句、结果的传送判断框根据给定条件判断流程线流程进行的方向连结点连结另一页或另一部分的框图四.算法的三种基本逻辑结构:顺序结构、条件(分支)结构和循环结构.1.顺序结构:最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.如下图,只有在执行完A 框指定的操作后,才能接着执行B 框指定的操作;2.条件(分支)结构:在一个算法中,用来处理需要根据条件是否成立有不同的流向的结构.常见的条件结构的程序框图有下面两种形式:否否是是BA A P PB A3.循环结构:从某处开始,按照一定的条件反复执行某些步骤的情况,就是循环结构,其中反复执行的步骤称为循环体.常见的循环结构的框图对应为:否是A P三点剖析一.注意事项:1.在画程序框图时,从开始框沿箭头必须能到达结束框,特别是条件分支结构应沿每条支路都能到达结束框,流程线必须加箭头表示顺序.2.对于循环结构有如下需要注意的情况:(1)循环结构非常适合计算机处理,因为计算机的运算速度非常快,执行成千上万次的重复计算,只不过是一瞬间的事,且能保证每次的结果都正确;(2)循环结构要有中止循环体的条件,不能无休止的运算下去,循环结构中一定包含条件结构,如i n ≤就是中止循环的条件;(3)循环结构的关键是,要理解“累加变量”和“用1i 代替i ”,S 是一个累加变量,i 是计数变量,每循环一次,S 和i 都要发生变化,这两步要重复计算若干次;(4)一种循环结构是先判断i n ≤是否成立,若是,执行循环体;若否,则中止循环,像这样,每次执行循环体前对控制循环条件进行判断,条件满足时执行循环体,不满足则停止,称为当型循环.除了当型循环外,常用的循环结构还有直到型循环.二.方法点拨1.画程序框图的规则:(1)使用标准的框图的符号;(2)框图一般按从上到下、从左到右的方向画;(3)除判断框外,大多数框图符号只有一个进入点和一个退出点.判断框是具有超过一个退出点的惟一符号;(4)一种判断框是“是”与“不是”两分支的判断,而且有且仅有两个结果;另一种是多分支判断,有几种不同的结果;(5)在图形符号内描述的语言要非常简练清楚.2.画程序框图要注意的几点:(1)起、止框是任何流程不可少的,表示程序的开始和结束;(2)输入、输出框可以用在算法中任何需要输入、输出的位置;(3)算法中间要处理数据或计算,可分别写在不同的处理框内;(4)当算法要求你对两个不同的结果进行判断时,要写在判断框内;(5)一个算法步骤到另一个算法步骤用流程线连结;(6)如果一个框图需要分开来画,要在断开处画上连结点,并标出连结的号码.程序框图例题1、下列说法正确的是()A.算法就是某个问题的解题过程;B.算法执行后可以产生不同的结果;C.解决某一个具体问题算法不同结果不同;D.算法执行步骤的次数不可以为很大,否则无法实施.例题2、指出下列哪一个不是算法()A.解方程260x -=的过程是移项和系数化为1B.从济南到温哥华需要先乘火车到北京,再从北京乘飞机到温哥华C.解方程2210x x +-=D.利用公式2πS r =,计算半径为3的圆的面积为2π3⨯例题3、下列语句中是算法的个数为()①从济南到巴黎:先从济南坐火车到北京,再坐飞机到巴黎;②统筹法中“烧水泡茶”的故事;③测量某棵树的高度,判断其是否是大树;④已知三角形的一部分边长和角,借助正余弦定理求得剩余的边角,再利用三角形的面积公式求出该三角形的面积A.1B.2C.3D.4随练1、下面四种叙述能称为算法的是()A.在家里一般是妈妈做饭B.做米饭要需要刷锅.添水.加热这些步骤C.在野外做饭叫野炊D.做饭必需要有米随练2、下列关于算法的说法正确的有()①求解某一类问题的算法是唯一的;②算法必须在有限步操作之后停止;③算法的每一步操作必须是明确的,不能有歧义或模糊;④算法执行后产生确定的结果.A.1个B.2个C.3个D.4个随练3、早上从起床到出门需要洗脸刷牙(5min).刷水壶(2min).烧水(8min).泡面(3min).吃饭(10min).听广播(8min)几个步骤,下列选项中最好的一种算法为()A.s1洗脸刷牙s2刷水壶s3烧水s4泡面s5吃饭s6听广播B.s1刷水壶s2烧水的同时洗脸刷牙s3泡面s4吃饭s5听广播C.s1刷水壶s2烧水的同时洗脸刷牙s3泡面s4吃饭的同时听广播D.s1吃饭的同时听广播s2泡面s3烧水的同时洗脸刷牙s4刷水壶算法的三种逻辑结构和框图表示例题1、如果执行如图所示的程序框图,那么输出的a=()A.2B.12 C.﹣1 D.以上都不正确例题2、如果执行如图所示的程序框图,那么输出的a=()A.2B.12 C.﹣1 D.以上都不正确例题3、阅读右边的程序框图,运行相应的程序,输出的S的值是()A.26B.40C.57D.无法确定随练1、如图是某算法的流程图,则执行该算法输出的结果是S=____.随练2、执行如图所示的程序框图,如果输入a=2,那么输出的a值为()A.4B.16C.256D.log316随练3、执行如图所示的程序框图,则输出的k=()A.4B.5C.6D.7拓展1、算法的有穷性是指()A.算法最后包含输出B.算法的每个操作步骤都是可执行的C.算法的步骤必须有限D.以上都不正确2、下面对算法描述正确的一项是()A.算法只能用自然语言来描述B.算法只能用图形方式来表示C.同一问题可以有不同的算法D.同一问题的算法不同,结果必然不同3、看下面的四段话,其中不是解决问题的算法的是()A.从上海到北京旅游,先坐火车,再坐飞机抵达B.解一元一次方程的步骤是去分母.去括号.移项.合并同类项.系数化为1C.方程210x -=有两个实根D.求12345++++的值,先计算123+=,再由于336+=,6410+=,10515+=,4、根据如图程序框图,输出k 的值为()A.3B.4C.5D.65、给出计算12+14+16+…+120的值的一个程序框图如图,其中判断框内应填入的条件是()A.i >10B.i <10C.i >20D.i <206、如图所示的流程图表示一函数,记作y=f (x ),若x 0满足f (x 0)<0,且f (f (x 0))=1,则x 0=____.。
高考数学专题—算法与程序框图一、基础知识要求1.算法与程序框图(1)算法:算法通常是指按照一定规则解决某一类问题的明确和有限的步骤;(2)程序框图:程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.2.三种基本逻辑结构及相应语句易错点:直到型循环是“先循环,后判断,条件满足时终止循环”;当型循环则是“先判断,后循环,条件满足时执行循环”;两者的判断框内的条件表述在解决同一问题时是不同的,它们恰好相反.二、算法与程序框图常见题型:(共4种题型:由程序框图求输出结果、由输出结果判断输入量的值、辨析程序框图的算法功能、完善程序框图)1、由程序框图求输出结果:已知程序框图,求输出的结果,可按程序框图的流程依次执行,最后得出结果.例1、【2020年高考江苏】如图是一个算法流程图,若输出y 的值为2-,则输入x 的值是_____.【答案】3-【解析】由于20x >,所以12y x =+=-,解得3x =-. 故答案为:3-例2、【广西南宁市第三中学2020届高三适应性月考卷】运行如图所示的程序算法,则输出的结果为A .2B .12C .13D .132【答案】A【解析】当2a =时, 1k =;当132a =时,3k =; 当132132a ==时,5k =;…;当132a =时,99k =,当2a =时,101k =,跳出循环; 故选:A .例3、【河北省衡水中学2020届高三下学期第二次调研数学】执行如图所示的程序框图,输出的结果是A .5B .6C .7D .8【答案】B【解析】1i =,12n =, 第一次循环: 8n =,2i =, 第二次循环:31n =,3i =, 第三次循环:123n =,4i =, 第四次循环:119n =,5i =,第五次循环:475n =,6i =,停止循环, 输出6i =. 故选B .例4、【广东省深圳市2020届高三下学期第二次调研数学】执行如图的程序框图,如果输入的k =0.4,则输出的n =A .5B .4C .3D .2【答案】C【解析】模拟程序的运行,可得k =0.4,S =0,n =1, S 11133==⨯, 不满足条件S >0.4,执行循环体,n =2,S 11113352=+=⨯⨯(1111335-+-)25=,不满足条件S >0.4,执行循环体,n =3,S 11111335572=++=⨯⨯⨯(11111133557-+-+-)37=, 此时,满足条件S >0.4,退出循环,输出n 的值为3. 故选:C .例5、【甘肃省西北师大附中2020届高三5月模拟试卷】“辗转相除法”是欧几里得《原本》中记录的一个算法,是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法.如图所示是一个当型循环结构的“辗转相除法”程序框图.当输入2020m =,303n =时,则输出的m 是A .2B .6C .101D .202【答案】C【解析】输入2020m =,303n =,又1r =. ①10r =>,202r =,303m =,202n =; ②2020r =>,3032021101÷=,101r =,202m =,101n ;③1010r =>,0r =,101m =,0n =; ④0r =,则0r >否,输出101m =.故选:C.例6、【重庆市第一中学2019-2020学年高三下学期期中数学】冰雹猜想也称奇偶归一猜想:对给定的正整数进行一系列变换,则正整数会被螺旋式吸入黑洞(4,2,1),最终都会归入“4-2-1”的模式.该结论至今既没被证明,也没被证伪. 下边程序框图示意了冰雹猜想的变换规则,则输出的i=A.4B.5C.6D.7【答案】B【解析】由题意,第一次循环,12S Z∉,35116S=⨯+=,011i=+=,1S≠;第二次循环,12S Z∈,11682S=⨯=,112i=+=,1S≠;第三次循环,12S Z∈,1842S=⨯=,213i=+=,1S≠;第四次循环,12S Z∈,1422S=⨯=,314i=+=,1S≠;第五次循环,12S Z∈,1212S=⨯=,415i=+=,1S=;此时输出5i=.故选:B例7、【重庆市南开中学2019-2020学年高三下学期线上期中数学】若某程序框图如图所示,则输出的S 的值是A .31B .63C .127D .255【答案】C【解析】第一次运行,1i =,0S =,8i <成立,则2011S =⨯+=,112i =+=; 第二次运行,2i =,1S =,8i <成立,则2113S =⨯+=,213i =+=; 第三次运行,3i =,3S =,8i <成立,则2317S =⨯+=,314i =+=; 第四次运行,4i =,7=S ,8i <成立,则27115S =⨯+=,415i =+=; 第五次运行,5i =,15S =,8i <成立,则215131S =⨯+=,516i =+=; 第六次运行,6i =,31S =,8i <成立,则231163S =⨯+=,617i =+=; 第七次运行,7i =,63S =,8i <成立,则2631127S =⨯+=,718i =+=; 第八次运行,8i =,127S =,8i <不成立, 所以输出S 的值为127. 故选:C .2、由输出结果判断输入量的值例8、【2020·黑龙江哈尔滨六中期中】执行如图所示的程序框图,若输出的结果是1516,则输入的a 为( )A .3B .6C .5D .4【解析】 (1)第1次循环,n =1,S =12;第2次循环,n =2,S =12+122;第3次循环,n =3,S =12+122+123;第4次循环,n =4,S =12+122+123+124=1516.因为输出的结果为1516,所以判断框的条件为n <4,所以输入的a 为4.故选D.例9、我国古代数学著作《周髀算经》有如下问题:“今有器中米,不知其数.前人取半,中人三分取一,后人四分取一,余米一斗五升.问,米几何?”如图是解决该问题的程序框图,执行该程序框图,若输出的S =1.5(单位:升),则输入k 的值为( )A .4.5B .6C .7.5D .9【解析】选B.由程序框图知S =k -k 2-k 2×3-k 3×4=1.5,解得k =6,故选B.例10、执行下面的程序框图,为使输出S 的值小于91,则输入的正整数N 的最小值为( )A.5B.4C.3D.2【答案】D【解析】程序运行过程如下表所示:此时故选D. 例11、【2020届华大新高考联盟高三4月教学质量测评数学】执行如图所示的程序框图,设输出数据构成集合A ,从集合A 中任取一个元素m ,则事件“函数()2f x x mx =+在[)0,+∞上是增函数”的概率为A .14B .12C .34D .35【答案】C【解析】当20x y =-⇒=; 当2111x y =-+=-⇒=-; 当1100x y =-+=⇒=; 当0113x y =+=⇒=; 当1128x y =+=⇒=; 当213x =+=,退出循环. 所以{}0,1,3,8A =-,又函数()2f x x mx =+在[)0,+∞上是增函数,所以002mm -≤⇒≥. 函数()2f x x mx =+在[)0,+∞上是增函数的概率为34. 故选:C .3、辨析程序框图的算法功能:对于辨析程序框图功能问题,可将程序执行几次,即可根据结果作出判断.例12、执行右面的程序框图,如果输入的x=0,y=1,n=1,则输出x,y 的值满足 ( ) A.y=2x B.y=3x C.y=4x D.y=5x【答案】C【解析】由题图可知,x=0,y=1,n=1,执行如下循环: x=0,y=1,n=2;x=12,y=2,n=3;x=12+1=32,y=6,退出循环,输出x=32,y=6,验证可知,C 正确.例13、执行如图所示的程序框图,输出的结果为 ( )A.(-2,2)B.(-4,0)C.(-4,-4)D.(0,-8)【答案】B【解析】x=1,y=1,k=0,进入循环:s=1-1=0,t=1+1=2,x=0,y=2,k=0+1=1<3;s=0-2=-2,t=0+2=2,x=-2,y=2,k=1+1=2<3;s=-2-2=-4,t=-2+2=0,x=-4,y=0,k=2+1=3≥3,跳出循环,输出(x,y),即(-4,0).例14、执行下面的程序框图,如果输入的N=4,那么输出的S=( )A.1+12+13+14B.1+12+13×2+14×3×2C.1+12+13+14+15D.1+12+13×2+14×3×2+15×4×3×2 【答案】B【解析】由程序框图依次计算可得,输入N=4, T=1,S=1,k=2; T=12,S=1+12,k=3; T=13×2,S=1+12+13×2,k=4; T=14×3×2,S=1+12+13×2+14×3×2,k=5; 此时k 满足k>N,故输出S=1+1+1+1.例15、如果执行下边的程序框图,输入正整数N(N ≥2)和实数a 1,a 2,…,a N ,输出A,B,则( )A.A+B 为a 1,a 2,…,a N 的和B. A+B2为a 1,a 2,…,a N 的算术平均数C.A 和B 分别是a 1,a 2,…,a N 中最大的数和最小的数D.A 和B 分别是a 1,a 2,…,a N 中最小的数和最大的数 【答案】C【解析】随着k 的取值不同,x 可以取遍实数a 1,a 2,…,a N ,依次与A,B 比较,A 始终取较大的那个数,B 始终取较小的那个数,直到比较完为止,故最终输出的A,B 分别是这N 个数中的最大数与最小数.例16、【2020届清华大学中学生标准学术能力诊断性测试高三5月测试数学】下列程序框图的算法思想源于我国古代数学名著《九章算术》中的“更相减损术”.执行该程序框图,若输入16a =,10b =,则程序中需要做减法的次数为A .6B .5C .4D .3【答案】C【解析】由16a =,10b =,满足a b ,满足a b >,则16106a =-=;满足a b ,不满足a b >,则1064b =-=; 满足a b ,满足a b >,则642a =-=; 满足a b ,不满足a b >,则422b =-=; 不满足ab ,则输出2a =;则程序中需要做减法的次数为4, 故选:C .4、完善程序框图:完善程序框图问题,结合初始条件和输出结果,分析控制循环的变量应满足的条件或累加、累乘的变量的表达式.例17、【2020届河南省商丘周口市部分学校联考高三5月质量检测数学】宋元时期数学名著《算学启蒙》中有关于“松竹并生”的问题:“松长六尺,竹长两尺,松日自半,竹日自倍,何日竹逾松长?”如图是解决此问题的一个程序框图,其中a 为松长、b 为竹长,则矩形框与菱形框处应依次填A .2a a a =+;a b <B .2aa a =+;a b < C .2a a a =+;a b ≥ D .2aa a =+;a b > 【答案】B【解析】松日自半,则表示松每日增加原来长度的一半,即矩形框应填2aa a =+;何日竹逾松长,则表示竹长超过松长,即松长小于竹长,即菱形框应填ab <. 故选:B例18、【2019·全国1·理T8文T9】下图是求12+12+12的程序框图,图中空白框中应填入( )A.A=12+A B.A=2+1A C.A=11+2AD.A=1+12A【答案】A【解析】执行第1次,A=12,k=1≤2,是,第一次应该计算A=12+12=12+A ,k=k+1=2;执行第2次,k=2≤2,是,第二次应该计算A=12+12+12=12+A,k=k+1=3;执行第3次,k=3≤2,否,输出,故循环体为A=12+A,故选A. 例19、【2018·全国2·理T7文T8】为计算S=1-12+13−14+…+199−1100,设计了右侧的程序框图,则在空白框中应填入( ) A.i=i+1 B.i=i+2 C.i=i+3 D.i=i+4【答案】B【解析】由于N=0,T=0,i=1,N=0+11=1,T=0+11+1=12,i=3,N=1+13,T=12+14,i=5…最后输出S=N-T=1-12+13−14+…+199−1100,一次处理1i 与1i+1两项,故i=i+2. 例20、下面程序框图是为了求出满足3n-2n>1 000的最小偶数n,那么在和两个空白框中,可以分别填入( ) A.A>1 000和n=n+1 B.A>1 000和n=n+2 C.A ≤1 000和n=n+1 D.A ≤1 000和n=n+2【答案】D【解析】因为要求A 大于1 000时输出,且程序框图中在“否”时输出,所以“”中不能填入A>1 000,排除A,B.又要求n 为偶数,且n 初始值为0,所以“”中n 依次加2可保证其为偶数,故选D.例21、执行下面的程序框图,当输入的x 的值为4时,输出的y 的值为2,则空白判断框中的条件可能为( ) A.x>3B.x>4C.x ≤4D.x ≤5【答案】B【解析】因为输入的x 的值为4,输出的y 的值为2,所以程序运行y=log 24=2. 故x=4不满足判断框中的条件,所以空白判断框中应填x>4.例22、【2020年高考浙江】设集合S ,T ,S ⊆N *,T ⊆N *,S ,T 中至少有2个元素,且S ,T 满足:①对于任意的x ,y ∈S ,若x ≠y ,则xy ∈T ;②对于任意的x ,y ∈T ,若x <y ,则y x∈S .下列命题正确的是A .若S 有4个元素,则S ∪T 有7个元素B .若S 有4个元素,则S ∪T 有6个元素C .若S 有3个元素,则S ∪T 有5个元素D .若S 有3个元素,则S ∪T 有4个元素 【答案】A【解析】首先利用排除法:若取{}1,2,4S =,则{}2,4,8T =,此时{}1,2,4,8ST =,包含4个元素,排除选项D ; 若取{}2,4,8S =,则{}8,16,32T =,此时{}2,4,8,16,32S T =,包含5个元素,排除选项C ;若取{}2,4,8,16S =,则{}8,16,32,64,128T =,此时{}2,4,8,16,32,64,128S T =,包含7个元素,排除选项B ;下面来说明选项A 的正确性:设集合{}1234,,,S p p p p =,且1234p p p p <<<,*1234,,,p p p p N ∈,则1224p p p p <,且1224,p p p p T ∈,则41p S p ∈, 同理42p S p ∈,43p S p ∈,32p S p ∈,31p S p ∈,21p S p ∈, 若11p =,则22p ≥,则332p p p <,故322p p p =即232p p =, 又444231p p p p p >>>,故442232p p p p p ==,所以342p p =, 故{}232221,,,S p p p =,此时522,p T p T ∈∈,故42p S ∈,矛盾,舍.若12p ≥,则32311p p p p p <<,故322111,p pp p p p ==即323121,p p p p ==, 又44441231p p p p p p p >>>>,故441331p p p p p ==,所以441p p =, 故{}2341111,,,S p p p p =,此时{}3456711111,,,,p p p p p T ⊆.若q T ∈, 则31q S p ∈,故131,1,2,3,4i q p i p ==,故31,1,2,3,4i q p i +==,即{}3456711111,,,,q p p p p p ∈,故{}3456711111,,,,p p p p p T =, 此时{}234456711111111,,,,,,,S T p p p p p p p p ⋃=即S T 中有7个元素.故A 正确.例23、【2020年高考全国II 卷理数】0-1周期序列在通信技术中有着重要应用.若序列12na a a 满足{0,1}(1,2,)i a i ∈=,且存在正整数m ,使得(1,2,)i m i a a i +==成立,则称其为0-1周期序列,并称满足(1,2,)i m i a a i +==的最小正整数m 为这个序列的周期.对于周期为m 的0-1序列12na a a ,11()(1,2,,1)m i i k i C k a a k m m +===-∑是描述其性质的重要指标,下列周期为5的0-1序列中,满足1()(1,2,3,4)5C k k ≤=的序列是A .11010B .11011C .10001D .11001【答案】C【解析】由i m i a a +=知,序列i a 的周期为m ,由已知,5m =,511(),1,2,3,45i i k i C k a a k +===∑对于选项A ,511223344556111111(1)()(10000)55555i i i C a a a a a a a a a a a a +===++++=++++=≤∑52132435465711112(2)()(01010)5555i i i C a a a a a a a a a a a a +===++++=++++=∑,不满足; 对于选项B ,51122334455611113(1)()(10011)5555i i i C a a a a a a a a a a a a +===++++=++++=∑,不满足; 对于选项D ,51122334455611112(1)()(10001)5555i i i C a a a a a a a a a a a a +===++++=++++=∑,不满足; 故选:C。
第3讲算法与程序框图【考点解读】1. 了解算法的含义,了解算法的思想.2.理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构.【知识扫描】1.算法算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是和的,而且能够在有限步之内完成.2.程序框图程序框图又称,是一种用、来准确、直观地表示算法的图形.3.三种基本逻辑结构【考计点拨】牛刀小试:1.(2011高考北京卷)执行如图所示的程序框图,输出的s 值为 (A )3- (B )12- (C )13(D )2答案:D 2.(2011高考山东卷)执行右图所示的程序框图,输入l=2,m=3,n=5,则输出的y 的值是 . 【答案】68【解析】由输入l=2,m=3,n=5,计算得出y=278, 第一次得新的y=173;第二次得新的y=68<105,输出y.3.阅读下面的程序框图,则输出的S =()A .14B .20C .30D .55解析:选C.∵S 1=0,i 1=1;S 2=1,i 2=2;S 3=5,i 3=3;S 4=14,i 4=4;S 5=30,i =5>4退出循环,∴输出结果为30.4. (2011高考辽宁卷)执行右面的程序框图,如果输入的n 是4,则输出的P 是(A) 8(B) 5 (C) 3 (D) 25.(2011高考陕西卷)右图中,1x ,2x ,3x 为某次考试三个评阅人对同一道题的独立评分,P 为该题的最终得分。
当1x =6,2x =9,p=8.5时,3x等于 ( )(A)11 (B)10 (C)8 (D)7答案:C典题分析:考点:1.算法的含义,程序框图(1) 了解算法的含义和算法的思想.(2) 理解程序框图的三种基本逻辑结构:顺序,条件分支,循环. 2.基本语句理解几种基本算法语句——输入语句,输出语句,赋值语句,条件语句,循环语句的含义. 题型一算法的顺序结构 考点一 算法的循环结构例1.(2011高考湖南卷) 若执行如图3所示的框图,输入1231,2,3,2x x x x ====,则输出的数等于____________.答案:23考点二:算法的条件分支结构【例2】 函数y =,写出求该函数值的算法及程序框图. 解:算法如下: 第一步:输入x .第二步:如果x >0,则y =-2;如果x =0,则y =0;如果x <0,则y =2. 第三步:输出函数值y . 相应的程序框图如右图:变式2:“特快专递”是目前人们经常使用的异地邮寄信函或托运物品的一种快捷方式,某快递公司规定甲、乙两地之间物品的托运费用根据下列方法计算:()()()()⎩⎨⎧>⨯-+⨯≤=5085.05053.0505053.0ϖϖϖϖϖf解:算法如下:S1输入ω;S2如果ω≤50,那么f=0.53ω;否则f=50×0.53+(ω-50)×0.85;S3输出f.程序框图为:【例3】画出计算12-22+32-42+…+992-1002的值的程序框图.思维点拨:可以用循环结构来实现累加,设计一个累加变量,用S表示,设计一个计数变量,用I表示,另外还要对I进行奇偶数的判断,以决定是加还是减,因此还需要用到条件分支结构.解:程序框图如下图:变式3:画出求的值的程序框图.解:方法一:当型循环程序框图:方法二:直到型循环程序框图:规律总结:从近两年的高考试题来看,当型与直到型循环结构、条件分支结构是考查的热点,题型以选择题、填空题为主,分值5分左右,属容易题,主要考查算法基本结构以及读图、识图、利用框图解决简单算法问题的能力.预测2012年高考,循环结构与条件分支结构仍是考查的重点,但应同时注意算法的应。
张喜林制1.1 算法与程序框图1.1.1 算法的概念教材知识检索考点知识清单1.算法可以理解为或者看成____,并且这样的能够解决一类问题.2.描述算法可以有,例如,可以用加以叙述,也可以借助给出精确的说明,也可以用显示算法的全貌.3.教材中阐述的这种求解方程组的方法称为.4.我们学习的算法不同于一个具体问题的求解方法,它有如下要求:(1)写出的算法,必须能(例如解任意一个二元一次方程组),并且能使用.(2)算法过程要能____,每一步执行的操作,必须,不能____,而且经过有限步后能.要点核心解读1.算法的含义算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或看成按要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题.2.算法的要求我们现在学习的算法不同于求解一个具体问题的方法,它有如下的要求:(1)写出的算法,必须能解决一类问题(例如解任意一个二元一次方程组),并且能重复使用;(2)算法过程要能一步一步执行,每一步执行的操作,必须确切,不能含混不清,而且能在有限步后得出结果.总之,算法虽然没有一个明确的概念,但其特点还是很鲜明的.不仅要注意理解算法的程序性、有限性、构造性、精确性的特点,还应充分理解算法的问题指向性即算法往往指向解决某一个或某一类问题.泛泛地谈算法是没有意义的,算法一定要以问题为载体, 3.高斯消去法(1)高斯消去法,例如:解方程组⎩⎨⎧=+=+,4842,17y x y x记(I)⎩⎨⎧=+=+.4842,17y x y x将方程组(I)中的第一个方程的两边同乘-2加到第二个方程中去,得⎩⎨⎧⨯-=-=+∏,21748)24(,17)(y y x 解方程组(Ⅱ)中的第二个方程,得.72421748=-⨯-=y利用方程组(I)中的第一个方程来消去第二个方程中的未知数x ,从而使该方程组(I)化为与其等价的方程组(Ⅱ),进而通过(Ⅱ)的第二个方程确定y ,再通过第一个方程确定x ,这种求解方程组的方法称为高斯消去法.(2)用高斯消去法解一般的二元一次方程组的算法.用高斯消去法解一般的二元一次方程组:⎩⎨⎧=+=+②①22221211212111,b x a x a b x a x a 的算法描述如下: 因为是二元一次方程组,所以方程组中的2111,a a 不能同时为0.第一步:假定011=/a (如果,011=a 可将第一个方程与第二个方程互换),,)(1121②①+-⨯a a得,)(111212211122122a b a b x a a a a -=-即方程组可化为⎩⎨⎧⋅-=-=+④③1212112122122111212111)(,b a b a x a a a a b x a x a第二步:如果,012212211=/-a a a a 解方程④得到:122122111212112a a a a b a b a x --= ⑤第三步:将⑤代入③,整理得122122112121221a a a a ba b a x --= ⑥第四步:输出结果⋅21,x x如果,012212211=-a a a a 则从④可以看出,方程组无解或有无穷多组解,以后,我们在描述算法时,用英文Stepl ,Step2,…来表示第一步,第二步,……也可以简写为:Sl ,S2,…4.解二元一次方程组的公式算法算法步骤如下:Sl 计算;12212211a a a a D -=S2如果D=O ,则原方程组无解或者有无穷多组解;如果D ≠0,;,21111221222211Dab a b x D a b a b x -=-=则S3 输出计算的结果21,x x 或无法求解信息.5.算法的描述描述算法可以有不同的.方式,常用的有自然语言、框图、程序设计语言、伪代码等. (1)自然语言.自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等,用自然语言描述算法的优点通俗易懂,当算法中的操作步骤都是按顺序执行时比较容易理解,缺点是如果算法中包含判断和转向,并且操作步骤较多时,就不那么直观清晰了.(2)框图(下一节研究). (3)程序设计语言.典例分类剖析考点1算法的概念[例1] 指出下列哪个不是算法( ).A .解方程062=-x 的过程是移项和系数化为1B .从济南到温哥华要先乘火车到北京,再转乘飞机C .解方程0122=-+x xD .利用公式2r S π=计算半径为3的圆的面积就是计算23⨯π [试解] .(做后再看答案,发挥母题功能)[解析] 由算法的含义可知选C . [答案]C[点拨] 正确理解算法的含义是解决此类问题的关键. 1.下列语句中是算法的有().①从广州到北京旅游,先坐火车,再坐飞机抵达;②解一元一次方程的步骤是去分母、去括号、移项、合并同类项、系数化为1;③方程012=-x 有两个实根;④求4321+++的值,先计算,321=+再由1046,633=+=+得最终结果是10.A .1个 B.2个 C.3个 D.4个考点2 高斯消去法和解二元一次方程组的公式算法[例2] 给出求解方程组⎩⎨⎧=+=+②①1154,72y x y x 的一个算法.[答案] 算法分析一:用高斯消去法求解. 解法-:Sl ,2⨯-①②得③;33-=y S2 解③得④;1-=y S3 将④代入①,得.4=x算法分析二:用公式法求解. 解法二:Sl 计算;61452=⨯-⨯=D S2 因为,06=/=D 所以,4611157=⨯-⨯=x;1647211-=⨯-⨯=yS3 输出.1,4-==y x[点拨] 本题的算法一是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法,下面写出求方程组)0()2.........(0A )1.(..........0y 1221222111≠-⎩⎨⎧=++=++B A B A C y B x C B x A 的解的算法:第一步:③①②;0)(,1221122121=-+-⨯-⨯C A C A y B A B A r A A r第二步:解③,得;12212112B A B A C A C A y --=第三步:将lB A B AC A C A y 2212112--=代入①,得 ⋅-+-=12212112B A B A C B C B x此时我们得到了二元一次方程组的求解公式,利用此公式可得到例2的另一个算法:第一步:取;11,5,4,7,1,2222111-===-===C B A C B A 第二步:计算 ;122121121222112B A B A C A C A y B A B A C B C B x l --=-+-=与第三步:输出运算结果.可见利用上述算法,更加有利于上机执行与操作. 2.写出二元一次方程组⎩⎨⎧-=+=-2,1423y x y x 的两种算法.考点3算法的描述[例3] (1)写出一个求解任意二次函数++=bx ax y 2)0(=/a c 的最值的算法. (2)设计一个算法,对任意3个数a ,b ,c ,求出其中的最小数.[答案] (1)由二次函数的性质知,当0>a 时,函数有最小值;442ab ac -当a<0时,函数有最大值 ab ac 442- 算法步骤用自然语言叙述如下:Sl 计算;442ab ac m -=S2 若a>0,则函数的最小值是m ;否则,执行S3; S3 函数的最大值是m . (2)算法步骤如下:;min 1a S =S2 如果min,<b 则;min b =S3 如果min,<c 则⋅=c mm S4 min 就是a ,b ,c 中的最小数.[点拨] (1)第(1)题用的是自然语言,第(2)题用的是数学语言,至于用哪种语言结合具体的问题而定. (2)任给有限个数,求其中的最大数、最小数的算法,在数不是很多的情况下,就可以采用这种逐一比较的办法.3.写出解方程0322=--x x 的一个算法, 考点4算法的应用[例4] -位商人有9枚银元,其中有一枚略轻的是假银元,你能用天平(不用砝码)将假银元找出来吗?设计一个算法,解决这一问题.[解析] 最容易想到的解决这个问题的一种方法是:把9枚银元按顺序排成一排,先称前2枚,若不平衡,则可找出假银元;若平衡,则2枚银元都是真的,再依次与剩下的银元比较,就能找出假银元.上述算法,最少要称量1次最多需称量7次,我们还可以对这种算法进行改进,使得称量的次数尽量少一些.[答案] 解法一:算法步骤如下:Sl任取2枚银元分别放在天平的两边,如果天平左右不平衡,则轻的一边就是假银元;如果天平平衡,则执行S2;S2取下右边的银元,放在一边,然后把剩余的7枚银元依次放在右边进行称量,直到天平不平衡,偏轻的那一枚就是假银元.解法二:算法步骤如下:Sl把银元分成3组,每组3枚;S2先将两组分别放在天平的两边,如果天平不平衡,那么假银元就在偏轻的那一组;如果天平左右平衡,则假银元就在未称的第3组里;S3取出含假银元的那一组,从中任取两枚银元放在天平的两边,如果左右不平衡,则轻的那一边就是假银元;如果天平平衡.则未称的那一枚就是假银元.4.-个人带三只狼和三只羚羊过河,只有一条船,同船可以容一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量,它就会吃掉羚羊.请你设计安全渡河的算法,优化分层测训学业水平测试1.下列关于算法的说法中,正确的是( ). A .算法就是某个问题的解题过程 B .算法执行后可以不产生确定的结果 C .解决某类问题的算法不是唯一的 D .算法可以无限地操作下去不停止 2.假设家中生火泡茶有下列步骤:a.生火 b .将水倒入锅中 c .找茶叶 d .洗涤茶壶茶碗 e .用开水冲茶 则最优算法为( ).A. abcdeB.bacdeC.cdabeD.dcabe 3.下列算法的说法中,正确的有 . ①求解某一类问题的算法是唯一的; ②算法必须在有限步操作后停止; ③算法的每一步操作必须是明确的; ④算法执行后一定产生确定的结果.4.对于像“喝一碗水”这类含有动作性的语言能否出现在算法的一个步骤中,下列说法中正确的是——: ①能;②不能;③有些题目能,有些不能;④以上说法均不对. 5.写出一个能找出a ,b ,c ,d 最大数的算法.高考能力测试(测试时间:45分钟测试满分:100分)一、选择题(本大题共8小题,每小题5分,共40分,在每小题给出的四个选项中,只有一项是符合题目要求的)1.下列对算法描述正确的一项是( ). A .算法只能用自然语言来描述 B .算法只能用图形方式来表示 C .同一问题可以有不同的算法D .同一问题的算法不同,必然结果不同 2.算法的有穷性是指( ). A .算法必须包含输出B .算法中的每个操作步骤都是可执行的C .算法的步骤必须有限D .以上说法均不正确3.下列语句表达中是算法的有( ).①从济南到巴黎,可以先乘火车到北京,再坐飞机抵达;②利用公式ah S 21=计算底为1,高为2的三角形的面积;;4221+>x x ③④求M(l ,2)与Ⅳ(-3,-5)两点连线的方程,可先求MN 的斜率,再利用点斜式方程求得.A .1个B .2个C .3个 D.4个 4.早上从起床到出门需要洗脸刷牙(5 min)、刷水壶(2 min)、烧水(8 min)、泡面(3 min)、吃饭(10 min)、听广播(8 min)几个步骤,下列选项中最好的一种算法是( ). A .洗脸刷牙、刷水壶、烧水、泡面、吃饭、听广播B .刷水壶、烧水同时洗脸刷牙、泡面、吃饭、听广播C .刷水壶、烧水同时洗脸刷牙、泡面、吃饭同时听广播D .吃饭同时听广播、泡面、烧水同时洗脸刷牙、刷水壶 5.下面四句话中不是解决问题的算法的是( ).A .从济南到北京旅游,先坐火车,再坐飞机B .解一元一次方程的步骤是去分母、去括号、移项、合并同类项、系数化为1C .方程012=-x 有两个实根D .求54321++++的值,先计算,321=+再由,633=+,15510,1046=+=+最终结果为15 6.计算下列各式中的s 的值,能设计算法求解的是( ).;100321++++= s ① ;100321 +++++=s ②⋅∈≥++++=),1(321N n n n s 且③①②.A .B ①③ ②③.C ①②③.D7.对于算法:Sl 输入n ;S2 判断n 是否等于2,若,2=n 则n 满足条件;若n>2,则执行S3;S3 依次从2到n-1检验能不能整除n ,若不能整除n ,则执行S4;若能整除n ,则执行Sl ; S4 输出n .满足条件的n 是( ).A .质数B .奇数C .偶数D .约数 8.-个算法步骤如下:第一步:S 取值0,i 取值1;第二步:如果i≤10,则执行第三步,否则执行第六步; 第三步:计算S+i 并将结果代替S ; 第四步:用i+2的值代替i ; 第五步:转去执行第二步; 第六步:输出S .运行以上步骤输出的结果为( ). A .25 B .20 C .15 D .10二、填空题(本大题共4小题,每小题5分,共20分,把答案填在题后的相应位置) 9.可设计一个计算分段函数.⎩⎨⎧≤+>-=)0(5),0(12)(2x x x x x x f 的函数值的算法,该算法最后输出的结果是6时,输入的x 的值为10.已知数字序列:.8,52,12,18,32,15,8,7,5,2写出从该序列中搜索18的一个算法: 第一步:输入实数a .第二步: 第三步:输出.18=a11.求1197531⨯⨯⨯⨯⨯的值的一个算法是:第一步:求lx3得到结果3.第二步:将第一步所得的结果3乘5,得到结果15. 第三步: 第四步:再将105乘9得到945.第五步:再将945乘11,得到10395,即为最后结果.12. -个求解任意二次函数)0(2=/++=a c bx ax y 的最值的算法是:第一步:计算;442ab ac m -=第二步: , 第三步:三、解答题(本大题共4小题,每小题10分,共40分,解答须写出文字说明、证明过程和演算步骤) 13.写出任意给出的4个数a ,b ,c ,d 的平均数的一种算法.14.某人带着一只狼和一只羊及一捆青菜过河,只有一条船,此船仅可载此人和狼、此人和羊或此人和青菜,没有此人在的时候,狼会吃羊,羊会吃青菜,请设计一个安全过河的算法.15.下面给出了一个问题的算法:第一步:输入a .第二步:若,4≥a 则执行第三步,否则执行第四步. 第三步:输出.12-a 第四步:输出.322+-a a问题:(1)这个算法解决的问题是什么?(2)当输入a 的值为多大时,输出的数值最小?16.如图1 -1 -1 -1,已知直线-+=+-y x l y x l 23:0123:21和,06=求1l 和2l 与y 轴所围成的三角形的面积,写出解决本题的一个算法.11 / 11。
普通高中课程标准实验教科书—数学[人教版]高三新数学第一轮复习教案(讲座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.一个人带着三只狼和三只羚羊过河,只有一条船,同船可容纳一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量就会吃羚羊。
该人如何将动物转移过河?请设计算法?解析:任何动物同船不用考虑动物的争斗但需考虑承载的数量,还应考虑到两岸的动物都得保证狼的数量要小于羚羊的数量,故在算法的构造过程中尽可能保证船里面有狼,这样才能使得两岸的羚羊数量占到优势,具体算法如下:算法步骤:第一步:人带两只狼过河,并自己返回;第二步:人带一只狼过河,自己返回;第三步:人带两只羚羊过河,并带两只狼返回;第四步:人带一只羊过河,自己返回; 第五步:人带两只狼过河。
点评:算法是解决某一类问题的精确描述,有些问题使用形式化、程序化的刻画是最恰当的。
这就要求我们在写算法时应精练、简练、清晰地表达,要善于分析任何可能出现的情况,体现思维的严密性和完整性。
本题型解决问题的算法中某些步骤重复进行多次才能解决,在现实生活中,很多较复杂的问题经常遇到这样的问题,设计算法的时候,如果能够合适地利用某些步骤的重复,不但可以使得问题变得简单,而且可以提高工作效率。
例4.这是中国古代的一个著名算法案例:一群小兔一群鸡,两群合到一群里,要数腿48,要数脑袋17,多少小兔多少鸡?解析:求解鸡兔的问题简单直观,却包含着深刻的算法思想。
应用解二元一次方程组的方法来求解鸡兔同笼问题。
第一步:设有小鸡x 只,小兔y 只,则有⎩⎨⎧=+=+)2(4842)1(17y x y x第二步:将方程组中的第一个方程两变乘-2加到第二个方程中去,得到⎩⎨⎧⨯-=-=+21748)24(17y y x ,得到y=7; 第三步:将y=7代入(1)得x=10。
点评:解决这些问题的基本思想并不复杂,很清晰,但叙述起来很烦琐,有的步骤非常多,有的计算量很大,有时候完全依靠人力完成这些工作很困难。
但是这些恰恰是计算机的长处,它能不厌其烦的枯燥的、重复的、繁琐的工作。
但算法也有优劣,我们要追求高效。
题型3:顺序结构例5.写出通过尺轨作图确定线段AB 一个5等分点的算法。
解析:我们借助于平行线定理,把位置的比例关系变成已知的比例关系,只要按照规则一步一步去做就能完成任务。
算法分析:第一步:从已知线段的左端点A 出发,任意作一条与AB 不平行的射线AP ; 第二步:在射线上任取一个不同于端点A 的点C ,得到线段AC ; 第三步:在射线上延AC 的方向截取线段CE=AC ; 第四步:在射线上延AC 的方向截取线段EF=AC ; 第五步:在射线上延AC 的方向截取线段FG=AC ;第六步:在射线上延AC 的方向截取线段GD=AC ,那么线段AD=5AB ; 第七步:连接DB ;第八步:过C 作BD 的平行线,交线段AB 于M ,这样点M 就是线段AB 的一个5等分点。
点评:这个算法步骤具有一般性,对于任意自然数n,都可以按照这个算法的思想,设计出确定线段的n等分点的步骤,解决问题。
例6.有关专家建议,在未来几年内,中国的通货膨胀率保持在3%左右,这将对我国经济的稳定有利无害。
所谓通货膨胀率为3%,指的是每年消费品的价格增长率为3%。
在这种情况下,某种品牌的钢琴2004年的价格是10 000元,请用流程图描述这种钢琴今后四年的价格变化情况,并输出四年后的价格。
解析:用P表示钢琴的价格,不难看出如下算法步骤:2005年P=10000×(1+3%)=10300;2006年P=10300×(1+3%)=10609;2007年P=10609×(1+3%)=10927.27;2008年P=10927.27×(1+3%)=11255.09;因此,价格的变化情况表为:程序框图为:点评:顺序结构只须严格按照传统的解决数学问题的解题思路,将问题解决掉。
最后将解题步骤 “细化”就可以。
“细化”指的是写出算法步骤、画出程序框图。
题型4:条件结构例7.设计算法判断一元二次方程02=++c bx ax 是否有实数根,并画出相应的程序框图。
解析:算法步骤如下:第一步:输入一元二次方程的系数:a ,b ,c ;第二步:计算△ac b 42-=的值;第三步:判断△≥0是否成立。
若△≥0成立,输出“方程有实根”;否则输出“方程无实根”。
结束算法。
相应的程序框图如下:点评:根据一元二次方程的意义,需要计算判别式△ac b 42-=的值。
再分成两种情况处理:(1)当△≥0时,一元二次方程有实数根;(2)当△<0时,一元二次方程无实数根。
该问题实际上是一个分类讨论问题,根据一元二次方程系数的不同情况,最后结果就不同。
因而当给出一个一元二次方程时,必须先确定判别式的值,然后再用判别式的值的取值情况确定方程是否有解。
该例仅用顺序结构是办不到的,要对判别式的值进行判断,需要用到条件结构。
例8.(1)设计算法,求0=+b ax 的解,并画出流程图。
解析:对于方程0=+b ax 来讲,应该分情况讨论方程的解。
我们要对一次项系数a 和常数项b 的取值情况进行分类,分类如下: (1)当a ≠0时,方程有唯一的实数解是ab -; (2)当a=0,b=0时,全体实数都是方程的解; (3)当a=0,b ≠0时,方程无解。