高一数学必修三,算法与程序框图知识点及题型
- 格式:docx
- 大小:690.85 KB
- 文档页数:20
课堂探究1.理解算法的概念剖析:(1)算法可以理解为按照一定规则解决某一类问题所构成的完整的解题步骤,或看成按要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题.(2)展现方式:算法常用下列方式来表示:第一步,……第二步,……第三步,…………(3)描述算法可以有不同的方式:文字、图形、符号.(4)算法是机械的,有时要进行大量的重复计算,只要按部就班地去做,总能算出结果,通常把算法过程称为“数学机械化”,其最大优点是可以让计算机来完成.(5)求解某一个问题的算法不一定只有唯一的一个,可能有不同的算法.知识拓展算法的特征2.剖析:比较计算机和人类解决问题的区别:人类解决问题具有灵活性,同一个问题针对不同的情况,人类可以采取不同的解决方案.例如,通过爬梯子到房顶上,如果“梯子”的某一节已经损坏了,人类能想方设法越过这一节继续爬梯子.如果在爬梯子的过程中,感觉累了,人类就能想到先休息一会儿再上.与人类不同,计算机没有人类的这种主观能动性.解决问题时,计算机只能一节一节地“爬梯子”来执行,即按事先设计好的步骤来执行.如果“梯子”的某一节已经损坏了,也就是某个步骤设计不正确,那么计算机就不再往下执行了.计算机没有“累”的时候,总是勇往直前地继续下去,因此计算机解决问题的方式即算法必须有步骤,且这些步骤必须是明确的、有效的,而且能够在有限步之内完成.因此在设计算法时,要把人类解决问题的思维方式变为计算机解决问题的方式,即必须按步骤来解决问题,把所要解决的问题分解为有限个明确的、有效的步骤来完成,这就是算法.题型一 设计仅含有依次执行步骤的算法【例题1】已知一个长方体的长,宽,高分别为3,4,5,设计一个算法求其体积.分析:利用公式V 长方体=长×宽×高写出算法.解:算法如下:第一步,输入长方体的长a ,宽b ,高h .第二步,计算V =abh .第三步,输出V .反思 (1)设计一个具体问题的算法,通常按以下步骤:①认真分析问题,找出解决此题的一般数学方法;②借助有关变量或参数对算法加以表述;③将解决问题的过程划分为若干步骤;④用简练的语言将各个步骤表示出来.(2)仅含有依次执行步骤的算法是较简单的算法,特别地,若有公式可以套用,通常选择公式作为解决问题的算法.题型二 设计含有判断条件的算法【例题2】已知函数y =⎩⎪⎨⎪⎧2x +1,x >1,-x -1,x ≤1,设计一个算法,输入自变量x 的值,输出对应的函数值.分析:由于x在(-∞,1]和(1,+∞)上时,y有不同的对应法则,所以首先判断x与1的大小.解:算法如下:第一步,输入自变量x的值.第二步,判断x>1是否成立,若成立,则计算y=2x+1;否则计算y=-x-1.第三步,输出y.反思设计含有判断条件的算法时,往往是先判断条件,再根据条件是否成立,设计不同的步骤.题型三设计含有重复步骤的算法【例题3】写出求1×2×3×4×5×6的算法.分析:思路一:采取逐个相乘的方法;思路二:由于重复作乘法,故可以设计作重复乘法运算的步骤.算法1:第一步,计算1×2得到2.第二步,将第一步的运算结果2乘3,得到6.第三步,将第二步的运算结果6乘4,得到24.第四步,将第三步的运算结果24乘5,得到120.第五步,将第四步的运算结果120乘6,得到720.算法2:第一步,输入n的值6.第二步,令i=1,S=1.第三步,判断“i≤n”是否成立,若不成立,输出S,结束算法;若成立,执行下一步.第四步,令S的值乘i,仍用S表示,令i的值增加1,仍用i表示,返回第三步.反思设计此类问题的算法,通常有两种.一种称为累乘法,将步骤一直写下去,便得到任意有限个数相乘的算法.另一种具有代表性,是对一类问题的机械的、统一的求解方法.。
庖丁巧解牛知识·巧学一、算法的含义1.算法的定义广义的算法是指完成某项工作的方法和步骤,所以我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法,等等.在数学中,现代意义上的算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或看成按要求设计好的有限的确切的计算序列.2.算法的要求我们现在学习的算法不同于求解一个具体问题的方法,它有如下要求:(1)写出的算法可适用于一类问题,并且再遇到类似问题时能够重复使用;(2)算法过程要做到能一步一步地执行,每一步执行的操作,必须确切,不能含混不清,且在有限步后必须得到问题的结果.辨析比较算法与数学问题的解法既有联系又有区别.(1)联系:算法与解法是一般与特殊的关系,也是抽象与具体的关系.譬如,教材先从分析一个具体的二元一次方程组的求解过程(解法)出发,归纳出了二元一次方程组的求解步骤;并且指出,这样的求解步骤也适合有限制条件的二元一次方程组,这些步骤就构成了解二元一次方程组的算法;(2)区别:算法是解决某一类问题所需要的程序和步骤的统称,也可理解为数学中的“通法通解”;而解法是解决某一个具体问题的过程和步骤,是具体的解题过程.二、算法的特征及设计要求1.算法的特征对于某一个问题,找到解决它的某种算法是指使用一系列运算规则能在有限步骤内求解某类问题,其中的每条规则必须是明确定义的、可行的,不能含糊其辞、模棱两可,同时应对所有的初始数据(而不仅是指对某些特殊数值)有效.算法从初始步骤开始每一个步骤只能有一个确定的后继步骤,从而组成一个步骤序列,这个序列必须是有限的,序列的终止表示问题得到解决或指出问题没有解答.我们过去学习过的许多数学公式都是算法,加、减、乘、除运算法则以及多项式的运算法则也是算法.算法可以概括出以下几个特点:(1)概括性:写出的算法必须能解决这一类问题,并能重复使用.例如课本中关于二元一次方程组的求解问题,也适用于其他二元一次方程组的解法.(2)逻辑性:也就是算法应具有正确性和顺序性.算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的基础,只有执行完前一步才能进行下一步,并且每一步都有确切的含义,从而组成了一个具有很强逻辑性的序列.(3)有穷性:算法的步骤序列是有限的.一个算法对任何合法的输入值必须总是在执行有穷步之后结束,且每一步都可在有穷时间内完成.(4)不唯一性:求解某个问题的算法不是唯一的,对于一个问题可以有不同的算法,如课本关于二元一次方程组的求解问题可以用公式法,也可以用高斯消去法.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,例如心算、手算、计算器计算都要经过有限的、事先设计好的步骤去加以解决,同样一个工作计划、教学计划、生产流程都可以称为“算法”.辨析比较课本上有两种表示算法的语言:自然语言和算法语言.对于这两种算法,用自然语言叙述的算法便于理解,但比较冗长,而且操作性不是十分明朗;用数学语言描述的算法十分简洁,而且清晰,操作性强,但较抽象.2.算法的设计要求首先我们要知道,通常算法并不给出精确的解,而是说明如何得到解.算法由一系列加减乘除等运算以及顺序、判断、循环的操作指令完成.研究算法只是将研究解决一类问题的方法分解成一些合理的操作步骤.这些操作步骤必须明确有效并且能在有限步内完成.如何设计一个算法呢?首先应该从头到尾将这个问题解决的思路,以及各种可能出现的情况都想到,并且进行抽象概括.然后对过程进行细分,把每一个操作概括为一个简洁的算法语句,最后将算法一步步地写出来.一般情况下,一个问题对应很多不同的算法,我们在实际应用中可以选择一个效率最高的算法.算法设计的要求:(1)写出的算法必须能解决一类问题(如判断一个任意整数n是否为质数,求任意一个函数式的近似解等),并且能重复使用.(2)要使算法尽量简单,步骤尽量少,算法从初始步骤开始,每一个步骤只能有一个后继步骤,从而组成一个步骤序列,序列的终止表示问题得到解答或指出问题没有答案.(3)算法过程要能一步一步执行,每一步执行的操作,必须确切不能含糊不清,而且在有限步后能得出结果.(4)尽量地从步骤和思想上优化算法,使得算法效率最高.深化升华(1)算法实际上就是解决问题的一种程式化方法,它通常指向某一个或某一类问题,而解决的过程具有程序性和构造性.算法又可看成是一种解决问题的特殊的有效方法,我们在学习的过程中应重点学习算法的构造过程.(2)算法与一般的解决问题的过程有联系,但算法是“傻瓜化”的,即算法要“面面俱到”,不能省略任何一个小小的步骤(只有这样做,人们才能在设计出算法后,把具体的执行过程交给计算机去完成).三、算法的描述描述算法可以用不同的方式.例如:可以用自然语言和数学语言加以叙述,也可以借助形式语言(算法语言)给出精确的说明,还可以用程序框图直观地显示算法的全貌.1.自然语言自然语言就是人们日常使用的语言,可以是人们之间用来交流的语言、术语等,它通过分步的方式表达解决问题的过程.优点:好理解,当算法的执行都是先后顺序时比较容易理解.难点:表达冗长,且不易表达清楚步骤间的重复操作、分情况处理、先后顺序等问题.2.程序框图程序框图是用规定的图形符号来表达算法的具体过程.优点:简捷形象、步骤的执行方向直观明了.3.程序语言程序语言是将自然语言和框图所表达的解决问题的步骤用特定的计算机可识别的低级或高级语言编写而成的.特点:能在计算机上执行,但格式要求严格.四、程序框图1.程序框图的定义程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.打个比方,写文章要先拟提纲,盖楼房要先设计图纸,而计算机解题要先考虑算法,然后编制程序框图,程序框图是人们用来描述算法步骤的形象化的方法.在程序框图中,每一个框都清楚地表示了这一步要做的事,框与框之间的箭头表示相邻两框所做事情的先后顺序,每一种不同形状的框表示不同的操作方法!若把程序框图画出来,对编者来说,思路清晰,逻辑关系一目了然,尤其是在一些较复杂的程序编制中更为实用.2.构成程序框图的图形符号及其作用通常,程序框图由程序框和流程线来组成.一个或几个程序框的组合表示算法的一个步骤;流程线是方向箭头,按照算法进行的顺序将程序框连接起来.程序框图表示算法用到的图形符号如下表:图形符号名称符号表示的意义起止框流程图的开始或者结束输入输出框数据的输入或者结果的输出处理框赋值、执行计算语句、结果传送判断框根据给定的条件判断流程线流程进行的方向连结点连接另一页或另一部分程序框图学法一得作程序框图的规则及注意点:(1)每一种程序框图的符号都有自己的意义,不能混用,符号一定要规范.起始框只有一条流出线,终止框只有一条流入线,输入输出框和处理框只有一条流入线和流出线.判断框有一条流入线和两条流出线(True,False).(2)流程图的画法是从上而下、从左而右的方向画.一个算法的步骤到另一个算法的步骤,要用流程线连接.流程线要带箭头,表明流程执行的次序.(3)起止框是任何程序框图必不可少的,表明程序的开始和结束.(4)算法中间要处理的数据,一般分别写在不同的处理框内.(5)当算法要对两个不同的结果进行判断时,判断条件写在判断框内.(6)程序框图符号框内的文字表述要简洁精炼.(7)一般情况下,我们先用自然语言编写算法,然后再画程序框图.3.程序框图的构成一个程序框图包括以下几部分:(1)实现不同算法功能的相对应的程序框图的图形符号;(2)带箭头的流程线;(3)程序框内必要的说明文字.五、顺序结构算法含有两大因素:一是操作,主要包括算术运算、逻辑运算、函数运算等;二是逻辑结构.逻辑结构控制着算法的各操作的执行顺序.我们写出的或画出的程序框图,一定要使大家看得清楚、明白、容易阅读.如果写的算法毫无头绪,就让人很难阅读和理解.这就要求算法要有一个良好的结构.通常一个算法只能由三种基本逻辑结构组成,算法的三种基本逻辑结构分别为:顺序结构、条件结构、循环结构.顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个依次执行的步骤组成的,是任何一个算法都离不开的一种基本算法结构. 我们可以用图1-1-1表示,其中的A部分,B部分是依次执行的.只有在执行完A部分的操作后,才会顺次执行B部分的操作.图1-1-1深化升华顺序结构是从上而下依次执行命令,每步只执行一次,不会引起程序步骤的跳转.它只能解决一些简单的问题,步骤之间不能随便调换,调换会使算法不运行或出现错误.单独的顺序结构一般出现在这样几种题目中:根据公式求值、求一般函数(非分段函数)的函数值等;再者顺序结构是其他结构的基础,会出现在其他结构的运行的前后,是算法必需的一个基本结构.六、条件结构其实对于条件结构我们遇到的最早,我们遇到一个岔路口,你需要选择向哪走;“鱼和熊掌不能兼得”也只有一个选择;还有我们去坐出租车有3千米以内7元,3千米以外每千米3元的收费标准;等等.这些都是条件结构.显然,条件结构中有一个条件和两个分支,根据条件判断到底来选择哪个分支.在一个算法中,通常会遇到一些条件的判断,算法的流程根据条件是否成立有不同的流向,这种先根据条件判断,再决定执行哪一种操作的结构称为条件结构.图1-1-2所示的虚线框内是一种条件结构,此结构中包含一个判断框,根据给定的条件P 是否成立而选择A框或B框,请注意无论条件P是否成立,只能执行A框或B框之一,不可能既执行A框又执行B框,也不可能A框、B框都不执行,无论走哪一条路径,在执行完A或B 之后,脱离本条件结构.当然A或B两个框中可以有一个是空的,即不执行任何操作,如图1-1-3也是条件结构的一种.图1-1-2 图1-1-3辨析比较条件结构不同于顺序结构的地方是:它不是依次执行操作指令进行运算,而是依据条件作出逻辑判断,选择执行不同指令中的一个.一般地,这里的判断主要是判断“是”(即“Y”)或“否”(即“N”),即是否符合件的要求,因而它有一个入口和两个出口.七、循环结构在一些算法中,经常会出现从某处开始,按照一定的条件,反复执行某一处理步骤的情况,这就是循环结构.反复执行的处理步骤称为循环体.显然,循环结构中有关于条件的判断.因此,循环结构中必包含条件结构.我们先看一个小例子,比如我们要计算1×2×3×4×…×100,该怎么办呢?我们知道最直接的办法:图1-1-4只要一次一次地乘就是了,对我们来说这是一个烦琐而乏味的工作,可是计算机最适合这种工作了,因为计算机运算速度快,执行成千上万的重复操作只需要很短时间,却能保证每次的结果非常准确.首先我们知道一共要乘100次来设置一个变量i,它的用处是控制计算次数,我们要再设置一个变量m来积累一下我们前边得到的乘积的结果.算法如下: 第一步,首先对变量i赋值,i=1;第二步,对变量m赋值,m=1;第三步,让m累积,得到要求的值m=m×i;第四步,变量i增加1,i=i+1;第五步,判断一下,如果i>100则输出m,否则转至第三步.流程图如图1-1-4.我们来仔细地看一下这个例子的程序框图,重点看一下虚线框里面的部分(结合下面的解释):令i=1,m=1(注意不是0),赋完初值之后,循环就启动了.首先,m=1×1=1,然后i变为2,到判断框判断一下比100小,那么转回来再开始一遍刚才的过程.……直到循环到i=100时,m=1×2×3×4×…×100,到下一步时,i=100+1=101,此时i=101>100,便退出了循环结构.如果一个计算结构要重复一系列的计算步骤若干次,每次计算步骤完全相同,则这种算法结构叫做循环结构.可看出里面有几个比较重要的部分:类似于例子中的i用来控制循环次数的量称为循环变量(类似于例子中的m用来存储循环问题的结果的变量叫做累积变量).由于m=m+1这个语句在每次循环时都运行,我们把它叫做循环体.并且还有一个控制循环是否退出的判断框称为循环终止条件.这三部分构成了一个完整的循环结构.一个循环结构可如图1-1-5所示.图1-1-5学法一得写循环结构的步骤及应注意的问题:书写循环结构主要要找三个重点:①循环变量及初始值;②循环体的内容;③循环终止的条件,只要找到这些问题就好办了.书写一个循环结构要检查一下下面几个方面:(1)只有一个入口和一个出口(注意是看整个循环结构,不是看某一个部分);(2)结构的每一部分都可能被执行到(虽然每次只执行一条路线);(3)循环体内一定有一个选择结构来控制循环的流程;(4)结构体内的循环必须在有限次之内终止,不能出现死循环;(5)注意正确设置循环次数,不要多1或者少1.常见的循环结构有三种:计数型循环、当型循环和直到型循环.1.计数型循环结构一般用于预先知道重复的次数的循环结构.2.当型(While型)循环结构当型循环一般用于预先难以知道循环次数的循环结构,通过设置某个条件,当条件满足时就重复操作,当条件不满足时就退出循环.如图1-1-6所示,它的功能主要是当给定条件q成立时,执行A框操作,执行完A后,再判断条件q是否成立,如果仍然成立,再执行A框,如此反复执行A框,直到某一次条件不成立为止.此时不执行A框,从b点脱离循环结构.3.直到型(Until)循环结构直到型循环结构一般用于预先难以知道循环次数的循环结构,通过设置某个条件,当条件不满足时退出循环.如图1-1-7所示,它的功能是先执行A框,然后判断给定的条件q是否成立,如果条件q不成立,则执行A,然后再对条件q作判断,如果条件q仍然不成立,又执行A……如此反复执行A,直到给定的条件q成立为止,此时不再执行A,从b点脱离本循环结构.图1-1-6 图1-1-7辨析比较三种基本结构的关系如何?有哪些共同特点?顺序结构是最基本的也是最简单的控制结构;条件结构则是需要通过先判断,再决定执行哪个程序的控制结构;循环结构则是需要反复执行同一程序的控制结构,循环结构一定包含顺序结构和条件结构.顺序结构、条件结构、循环结构的共同特点是:(1)只有一个入口.(2)只有一个出口(实际运行的程序).请注意:一个菱形判断框有两个出口,而一个条件结构只有一个出口,不要将菱形框的出口和条件结构的出口混为一谈.(3)结构内的每一部分都有机会被执行到,也就是说对每一个框来说都应当有一条从入口到出口的路径通过它.像图1-1-8中的A,没有一条从入口到出口的路径通过它,是不符合要求的程序框图.(4)结构内不存在死循环,即无终止的循环,像图1-1-9就是一个死循环,在流程图中是不允许有死循环出现的.图1-1-8 图1-1-9八、计数变量与累加、累乘变量在有关累加、累乘问题的循环结构中一般都有一个计数变量和累加、累乘变量.计数变量用于记录循环次数,累加变量用于输出结果.计数变量和累加变量一般是同步执行的,累加或累乘一次,同时又计数一次.1.计数变量可以统计执行循环的次数,它控制着循环的开始和结束;算法未执行循环结构时,就赋予计数变量初始值,预示着循环开始,每执行一次循环结构,计数变量的值发生变化,并在每一次重复执行完循环体时(直到型)或重新开始执行循环体时(当型),要判断循环体的条件是否已达到终止循环的目的.2.累加变量,它是我们编写算法时至关重要的量,我们根据要求制定它的变化情况,通常情况下与计数变量有对应关系.每执行一次循环结构,累加变量的值变化一次,并在每一次重复执行完循环体时(直到型)或重新开始执行循环体时(当型),观察累加变量值的变化情况,并根据题意对累加变量设置使循环结构终止循环的条件.3.累乘变量同累加变量的设置目的一样,只不过分工不同.前者是用来计算很多项的和,后者是用来处理很多项的积.累加、累乘变量是为最终输出的结果服务的,通常累加变量用来处理有通项公式或递推公式的数列的前n项和,累乘变量用来处理像阶乘一样有通项公式或递推公式的数列的前n 项的积.深化升华在循环结构中,要求注意根据条件设计合理的计数变量、循环变量.特别要求条件的表述要恰当、精确.若求只含有一个关系式的解析式的函数值时,只用顺序结构就能解决;若是遇到分类讨论或执行时需要判断后才能执行后继步骤的,就必须引入条件结构;如果问题里涉及的运算进行了许多次重复,且每次重复时变量与变量之间有对应关系,就可引入变量,应用于循环结构.典题·热题知识点一算法设计例1 写出解方程x2-2x-3=0的一个算法.思路分析:本题考查一元二次方程的解法.对于本类题目关键是要先写出解方程或方程组的解题过程.解:算法一:第一步,移项,得x2-2x=3.①第二步,①式配方,得(x-1)2=4.②第三步,②式两边开方,得x-1=±2.③第四步,解③得x=3或x=-1.算法二:第一步,计算一元二次方程的判别式的值,并判断其符号.显然Δ=22+4×3=16>0.第二步,将a=1,b=-2,c=-3代入求根公式x1,2=a acb b24 2-±-,得x1=3,x2=-1.方法归纳1.该题用了两种方法求解,一种是分解因式法,另一种是求根公式法.对于问题的求解过程,我们需要既强调对“通法通解”的掌握,又强调对所学过的知识的灵活应用.2.传统的数学问题的求解过程就是一个具体的算法.例2 100个和尚吃100个馒头.大和尚一人吃3个,小和尚3人吃一个,求大、小和尚各多少个?试用算法来解本题.思路分析:本题考查二元一次方程组的解法.对于二元一次方程组,我们可以直接套用高斯消元法.解:设有x 个大和尚,y 个小和尚.算法如下:第一步,先列方程组⎪⎩⎪⎨⎧=+=+,100,10033y x y x 可得a 11=3,a 12=31,b 1=100,a 21=1,a 22=1,b 2=100. 第二步,令D=a 11a 22-a 21a 12=3-31≠0,方程组有解. 第三步,套用公式可求得x=Da b a b 122221-=25,y=D a b a b 211112-=75. 巧解提示 可以看出只需给出问题的初始值a 11=3,a 12=31,b 1=100,a 21=1,a 22=1,b 2=100,套用高斯消元法的算法,问题即可解决,并且步骤简洁,计算量少,且还可以看出该算法具有很强的普遍性.高斯消元法解一般的二元一次方程组⎩⎨⎧=+=+.,22221211221111b x a x a b x a x a 的算法如下:第一步,计算D=a 11a 22-a 21a 12;第二步,如果D=0,则原方程组无解或有无穷多组解;否则(D≠0),x 1=Da b a b 122221-,x 2=D a b a b 211112-; 第三步,输出计算结果x 1、x 2或者无法求解的信息.知识点二 顺序结构例3 f(x)=x 2-2x-3,求f(3)、f(5)、f(-5)并计算f(3)+f(5)+f(-5).设计一个解决该问题的算法,并画出流程图.思路分析:本题考查简单的求函数值的顺序结构的程序框图的作法.这是简单的求函数值问题,我们直接代入即可求得函数值.解:算法如下:第一步,输入x=3;第二步,输出y 1=x 2-2x-3;第三步,输入x=-5;第四步,输出y 2=x 2-2x-3;第五步,输入x=5;第六步,输出y 3=x 2-2x-3;第七步,输出y=y 1+y 2+y 3. 算法流程图如图1-1-10.图1-1-10方法归纳 本题不是很特殊,但说明了一般函数(非分段函数)的函数值的求法就是一个简单的顺序结构.但是要注意类似于拓展变式中关于迭代的函数思想的掌握.例4 求底面边长为24,侧棱长为5的正四棱锥的体积.给出解决该问题的一个算法.思路分析:本题考查的是几何中的体积计算问题,要用顺序结构来作程序框图.要求正四棱锥的体积,根据体积公式必须先求出底面面积及高,再利用体积公式求出体积.解:算法设计如下:第一步,取a=24,l=5;第二步,计算R=22a ∙; 第三步,计算h=22R l -;第四步,计算S=a 2;第五步,计算V=31Sh;第六步,输出计算结果. 算法流程图如图1-1-11.图1-1-11方法归纳 这个题目主要展现了如何来求一个锥体的体积的思维过程,体现了顺序的特点,依次先求高,再求底面积,最后求体积.此题比以前的题目更为抽象,体现了从特殊到一般的转化,也体现了对知识的概括能力.例5 用尺规作图,确定线段AB 的一个五等分点.思路分析:本题考查顺序结构作图的步骤及注意事项.确定线段AB 的五等分点,是指在线段AB 上确定一点M,使得AM=51AB. 解:算法如下:第一步,从A 点出发作一条与原直线不重合的射线.第二步,任取射线上一点C,并在射线上作线段AD,使AD=5AC.第三步,连结DB,并过C 点作BD 的平行线交AB 于M,M 就是要找的一个5等分点. 这个过程也需要一步一步来实现.作图步骤如下:1.从已知线段的左端点A 出发,作一条射线AP.2.在射线上任取一点C,得线段AC.3.在射线上作线段CE=AC.4.在射线上作线段EF=AC.5.在射线上作线段FG=AC.6.在射线上作线段GD=AC,那么线段AD=5AC.7.连结DB.8.过C作BD的平行线,交线段AB于M,这样点M就是线段AB的一个5等分点.图1-1-12方法归纳上面是解决这个作图问题的一个算法,我们只要依次执行这一系列步骤,就能确定线段的5等分点.这个算法具有一般性,对于任意自然数n,都可以按照这个算法的思想,设计出确定线段n等分点的步骤,得到解决这个问题的一般算法.知识点三条件结构例6 有4个数a,b,c,d,要求按由大到小的顺序输出.思路分析:本题考查排序问题中应用条件结构判断的问题.我们可以把a,b,c,d中最大的放在a 中,然后将余下的三个数中最大的放在b中,再找出余下的两个数中较大的放在c中,最后输出a,b,c,d.解:算法步骤如下:第一步,找出a和b中的大者放在a中,小者放在b中.第二步,找出c和d中的大者放在c中,小者放在d中.第三步,找出a和c中的大者放在a中,小者放在c中.第四步,找出b和c中的大者放在b中,小者放在c中.第五步,找出b和d中的大者放在b中,小者放在d中.第六步,找出c和d中的大者放在c中,小者放在d中.程序框图如图1-1-13所示.图1-1-13。
高一数学算法和程序框图试题答案及解析1.如图所示,程序框图(算法流程图)的输出结果是()A.B.C.D.【答案】A【解析】条件成立,第一次执行循环体,条件成立,第二次执行循环体条件成立,第三次执行循环体;条件不成立,退出循环,输出.【考点】程序框图的识别和应用.2.若某程序图如图所示,则该程序运行后输出的k的值是()A.4B.5C.6D.7【答案】B【解析】第一次执行循环体,.第二次执行循环体,,.第三次执行循环体,【考点】理解程序框图的逻辑结构.3.如下图所示程序框图,已知集合是程序框图中输出的值},集合是程序框图中输出的值},全集U=Z,Z为整数集,当时,等于( )A.B.{-3. -1,5,7}C.{-3, -1,7}D.{-3, -1,7,9}【答案】D.【解析】依次执行程序框图中的语句:,;,;,;,;,;,;,;∴,,∴.【考点】读程序框图.4.在如图所示的程序框图中,输入A=192,B=22,则输出的结果是( ).A.0B.2C.4D.6【答案】B.【解析】本题要注意的是C是A除以B所得的余数,按程序框图可知有如下过程:原来:,第一次:C=16,A=22,B=16;第二次:C=6,A=16,B=6;第三次:C=4,A=6,B=4;第四次:C=2,A=4,B=2;第五次:C=0,A=2,B=0,此时B=0,则输出A=2,故选B.【考点】读懂程序框图的流程,赋值语句(如A=B,是把B的值赋值给A).5.如果执行右边的程序框图,那么输出的()A.22B.46C.94D.190【答案】C【解析】.运行第1次,=1,=1,=2,=4,=2>5,否,循环;运行第2次,=3,=10,=3>5,否,循环;运行第3次,=4,=22,=4>5,否,循环;运行第4次,=5,=46,=5>5,否,循环;运行第5次,=6,=94,=6>5,是,输出S=94,故选C【考点】程序框图6.按右边程序框图运算:若,则运算进行几次才停止?A.B.C.D.【答案】C【解析】第一次循环,第二次循环,第三次循环,第四次循环,第五次循环。
1.1 算法与程序框图1.1.1 算法的概念算法一词源于算术,即算术方法,是指一个由已知推求未知的运算过程.后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法.广义地说,算法就是做某一件事的步骤或程序.在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序.比如解方程的算法、函数求值的算法、作图的算法,等等.1.1.2程序框图1.起止框是任何流程图都不可缺少的,它表明程序的开始和结束,所以一个完整的流程图的首末两端必须是起止框.2.输入、它可用在算法中的任何需要输入、输出的位置.3.它是采用来赋值、执行计算语句、传送运算结果的图形符号.4.判断框一般有一个入口和两个出口,有时也有多个出口,它是惟一的具有两个或两个以上出口的符号,在只有两个出口的情形中,通常都分成“是”与“否”(也可用“Y”与“N”)两个分支5.顺序结构:顺序结构描述的是是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.6.条件结构:一些简单的算法可以用顺序结构来表示,但是这种结构无法对描述对象进行逻辑判断,并根据判断结果进行不同的处理.因此,需要有另一种逻辑结构来处理这类问题,这种结构叫做条件结构.它是根据指定打件选择执行不同指令的控制结构.7.循环结构:在一些算法中,经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构,反复执行的处理步骤为循环体,显然,循环结构中一定包含条件结构.8.理解程序框图中各个图形的形状、作用及使用规则,画程序框图的规则如下:(1)使用标准的图形符号.(2)框图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数流程图符号只有一个进入点和一个退出点.判断框具有超过一个退出点的惟一符号.(4)判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果.(5)在图形符号内描述的语言要非常简练清楚.9.算法的基本逻辑结构有三种,即顺序结构、条件结构和循环结构.其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达.。
高一数学算法和程序框图试题答案及解析1.如图是求样本平均数的程序框图,图中空白框中应填入的内容为()A.B.C.S=S+n D.S=S+【答案】A【解析】由于,故第次循环为.【考点】程序框图的应用.2.下图为某算法的程序框图,则程序运行后输出的结果是()A.2B.1C.3D.4【答案】C【解析】这里外是一个循环结构,一共循环了次,而内部是一个选择结构,根据条件确定的值是还是,然后把的值加给,次循环结束后,输出的值,便是正确答案,结果选择C.只要读懂题意,然后把人设想成计算机,按步骤逐步操作,最后就能得到正确答案.【考点】算法中的程序框图和循环结构与选择结构的嵌套.3.如图的程序框图,如果输入三个实数a,b,c,要求输出这三个数中最大的数,那么在空白的判断框中,应该填入下面四个选项中的( ).A.c>x?B.x>c?C.c>b?D.b>c?【答案】A.【解析】本题是寻找三个数中最大的数,在令a为x后,判断x与b的大小,因此第二个判断框里要判断的是x与c的大小,由于此时判断“是”时,c赋值为x,最后输出x,所以要填的是“c>x?”.【考点】程序框图的理解与应用,填写判断框处的语句是常考的一个考点.4.按右边程序框图运算:若,则运算进行几次才停止?A.B.C.D.【答案】C【解析】第一次循环,第二次循环,第三次循环,第四次循环,第五次循环。
【考点】直到型循环程序框图。
5.执行如图所示的程序框图,如果输入,那么输出的a值为()A.B.C.D.【答案】C【解析】根据程序框图的描述,是求使成立的最小a值,故选C.【考点】程序框图.6.执行下图的程序框图,若输入的x=2,则输出的y的值为【答案】23【解析】根据题意,本程序框图为求y的和循环体为“直到型”循环结构,输入x=2,第一次循环:y=2×2+1=5,x=5;第二次循环:y=2×5+1=11,x=11;第三次循环:y=2×11+1=23,∵|x-y|=12>8,∴结束循环,输出y=23.故答案为:23.【考点】本题为程序框图题,考查对循环结构的理解和认识,按照循环结构运算后得出结果.属于基础题.7.若某程序框图如图所示,则输出的p的值是 ()A.30B.28C.21D.55【答案】A【解析】根据框图的循环结构,依次;;。
高中数学必修3知识点总结第一章算法初步1.1.1算法的概念1、算法概念:在数学上,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2. 算法的特点:(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.1.1.2程序框图1、程序框图基本概念:(一)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。
(二)构成程序框的图形符号及其作用学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:1、使用标准的图形符号。
2、框图一般按从上到下、从左到右的方向画。
3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。
判断框具有超过一个退出点的唯一符号。
4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。
5、在图形符号内描述的语言要非常简练清楚。
(三)、算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。
1、顺序结构:顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
1.1.1算法的概念1. 知识与技能:(1)了解算法的含义,体会算法的思想。
(2)能够用自然语言叙述算法。
(3)掌握正确的算法应满足的要求。
(4)会写出解线性方程(组)的算法。
(5)会写出一个判断任意的正整数是否为质数的算法。
2. 过程与方法:通过求解二元一次方程组,体会解方程的一般性步骤,从而得到一个解二元一次方程组的步骤,这些步骤就是算法,不同的问题有不同的算法。
由于思考问题的角度不同,同一个问题也可能有多个算法,能模仿求解二元一次方程组的步骤,写出一个判断任意的正整数是否为质数的算法。
3. 情感、态度与价值观:通过本节的学习,使我们对计算机的算法语言有一个基本的了解,明确算法的要求,认识到计算机是人类征服自然的有力工具,进一步提高探索、认识世界的能力。
重点:算法的含义、解二元一次方程组和判断一个数为质数的算法设计。
难点:把自然语言转化为算法语言。
三 教学过程:1. 创设情境师:空间向量的学习我们暂时告以段落,从今天这节课开始,我们来学习算法这一章, 投影上打出的是教材上的章头图,图中有算盘、算筹、计算机,是什么把它们联系到一起? 是算法。
我国古代数学中蕴含着丰富的数学思想,现代的计算机与算法更是密不可分,那么究竟什么是算法?今天这节课,我们就一起来认识它。
引例(课件演示):(1)把大象放冰箱需要几步?(2)猜价格问题(3)狼、兔、蔬菜过河问题(4)解二元一次方程组: ⎩⎨⎧=+-=-②y x ①y x 1212 分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步:② - ①×2,得: 5y=3; ③第二步:解③得 53=y ; 第三步:将53=y 代入①,得 51=x . 学生探究:对于一般的二元一次方程组来说,上述步骤应该怎样进一步完善?老师评析:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。
第1讲算法与程序框图【地位作用】算法是高中数学课程中的新内容,通过本章中分析具体的事例,通过模仿、操作、探索的过程,体会算法的基本思想,发展学生思维、表达的条理性,提高逻辑思维能力。
【重点难点】理解算法的概念及重要性、框图的概念及画框图的规则是重点,难点是写出简单数学问题的算法及正确画出框图。
【教学内容】1.算法的概念算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等。
在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成。
2.算法的特点①确定性:算法的每一步都应当做到准确无误、“不重不漏”。
“不重”是指不是可有可无的、甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务。
②逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣。
分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续。
③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行。
3.算法的描述:自然语言、程序框图、(程序语言)。
4.程序框图(1)程序框图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形;(2)构成程序框的图形符号及其作用:例题讲解例1.算法的有穷性是指()A.算法必须包含输出B.算法中每个操作步骤都是可执行的C.算法的步骤必须有限D.以上说法均不正确例2.算法共有三种逻辑结构,即顺序结构,条件结构和循环结构,下列说法正确的是()A.一个算法只能含有一种逻辑结构B.一个算法最多可以包含两种逻辑结构C.一个算法必须含有上述三种逻辑结构D.一个算法可以含有上述三种逻辑结构的任意组合第4题第5题例3.(2010浙江理数)某程序框图如右图所示, 若输出的S =57,则判断框内为( )A .k >4?B .k >5?C .k >6?D .k >7?例4.下图给出的是计算201614121+⋅⋅⋅+++的值的一个程序框图,其中判断框内应填入的条件是( )A .i>10B .i<10C .i>20D .i<20例5.右边的程序框图(如上图所示),能判断任意输入的数x 的奇偶性:其中判断框内的条件是( )A .m=0B .x=0C .x=1D .m=1例6.(2010西城一模)阅读右面的程序框图, 运行相应的程序,输出的结果为( )A .1321B .2113C .813D .138例7.(2010海淀一模)已知某程序框图如右图所示,则执行该程序后输出的结果是( )A .1−B .1C .2D .12例8.写出一个将任意三个不同实数按由小到大列出的算法.例9.对任意给定的正整数n ,写出一个求3333123n ++++L 的算法的程序框图.例10.画出一个能够判断任意三个正数能否构成三角形的程序框图,如果能构成三角形并输出三角形的形状(锐角、直角或钝角三角形).例11.画出一个解一元二次型方程20ax bx c ++=的程序框图.例12.给出30个数:1,2,4,7,……,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推.要计算这30个数的和,现已给出了该问题算法的程序框图(如图所示),请在图中判断框内(1)处和执行框中的(2)处填上合适的语句,使之能完成该题算法功能.例13.某电信部门规定:拨打市内电话时,如果通话时间不超过3分钟,则收取通话费0.2元,如果通话时间超过3分钟,则超过部分以每分钟0.1元收取通话费(通话不足1分钟时按1分钟计),试设计一个计算通话费用的算法. 要求写出算法,画出程序框图.。
算法与程序框图知识集结知识元算法的概念知识讲解算法的概念算法是做一件事情的方法和步骤.在生活中做一件事情的方法和步骤有多种,我们设计的算法应本着简捷方便的原则.要正确地设计一个算法就需要了解算法的特征:有限性:一个算法当运行完有限个步骤后必须结束,而不能是无限地运行确定性:算法的每一步计算,都必须有确定的结果,不能模棱两可,即算法的每一步只有唯一的执行路径,对于相同的输入只能得到相同的输出结果可行性:算法中的每一步骤必须能用实现算法的工具精确表达,并能在有限步内完成有序性算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后续步骤,只有执行完前一步才能执行后一步普遍性:算法一般要适用于输入值集合中不同形式的输入值,而不是局限于某些特殊的值,即算法具有一般性,一个算法总是针对某类问题设计的,所以对于求解这类问题中的任意一个问题都应该是有效的不唯一性:解决一个或一类问题,可以有不同的方法和步骤,也就是说,解决这个或这类问题的算法不一定是唯一的例题精讲算法的概念与程序语句例1.下列叙述中,不能称为算法的是()A.植树需要运苗、挖坑、栽苗、浇水这些步骤B.按顺序进行下列运算:1+1=2,2+1=3,3+1=4,…,99+1=100 C.从济南到北京旅游,先坐火车,再坐飞机抵达D.3x>x+1例2.下列各式中S的值不可以用算法求解的是()A.S=1+2+3+4B.S=1+2+3+4+…C.S=1+++…+D.S=12+22+32+…+1002例3.程序框图中,表示处理框的是()A.B.C.D.程序框图知识讲解1.程序框图的三种基本逻辑结构的应用【知识点的认识】三种基本逻辑结构:1.顺序结构:往往从上到下的顺序进行,常用于直接应用公式的题型.如图,算法执行完A 后才执行B.2.条件结构:执行具有选择性.如图,当算法执行到条件P时,若P成立,则执行A,否则执行B.无论条件P是否成立,A和B只能选择其一执行,不能同时执行或同时不执行.A和B中可以有一个为空,即不执行任何操作.3.循环结构:有“当型”和“直到型”两种循环结构.①当型:先判断再执行.如图,当算法执行到条件P时,先判断P是否成立,若不成立,执行A,再判断P,若P依然不成立,继续执行A,再判断…,如此循环直到P成立退出循环.②直到型:先执行再判断.如图,算法先执行A,然后判断条件P是否成立,若P不成立,继续执行A,直到P成立推出循环.例题精讲程序框图例1.程序框图符号“”可用于()A.赋值a=6 B.输出a=5 C.输入a=5 D.判断a=6例2.如图的框图是一古代数学家的一个算法的程序框图,它输出的结果S表示()A.a0+a1+a2+a3的值B.a3+a2x0+a1x02+a0x03的值C.a0+a1x0+a2x02+a3x03的值D.以上都不对例3.某程序框图如图所示,若运行该程序后输出S=()A.B.C.D.当堂练习单选题练习1.算法的三种基本结构是()A.逻辑结构,模块结构,条件分支结构B.顺序结构,条件结构,循环结构C.矩形结构,菱形结构,平行四边形结构D.顺序结构,重复结构,分支结构练习2.用秦九韶算法求多项式f(x)=1+2x+x2-3x3+2x4在x=-1时的值,v2的结果是()A.-4 B.-1 C.5 D.6练习3.《九章算术》卷5《商功》记载一个问题“今有圆堡瑽,周四丈八尺,高一丈一尺.问积几何?答曰:二千一百一十二尺.术曰:周自相乘,以高乘之,十二而一”.这里所说的圆堡瑽就是圆柱体,它的体积为“周自相乘,以高乘之,十二而一、”就是说:圆堡瑽(圆柱体)的体积为:V=×(底面的圆周长的平方×高).则由此可推得圆周率π的取值为()A.3 B.3.14 C.3.2 D.3.3练习4.程序框图符号“”可用于()A.赋值a=6 B.输出a=5 C.输入a=5 D.判断a=6填空题练习1.将“杨辉三角”中的数从左到右、从上到下排成一数列:1,1,1,1,2,1,1,3,3,1,1,4,6,4,1,…,如图所示程序框图用来输出此数列的前若干项并求其和,若输入m=4则相应最后的输出S的值是____。
第一章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次,每个求和的数可用一个累乘变量表示.解程序框图:。
描述:例题:高中数学必修3(人教A版)知识点总结含同步练习题及答案第一章 算法初步 1.1 算法与程序框图一、学习任务1. 了解算法的含义,了解算法的基本思想,能用自然语言描述解决具体问题的算法.2. 了解设计程序框图表达解决问题的过程,了解算法和程序语言的区别;了解程序框图的三种基本逻辑结构,会用程序框图表示简单的常见问题的算法.二、知识清单算法 程序框图三、知识讲解1.算法算法(algorithm)是指按照一定规则解决某一类问题的明确和有限的步骤 .可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题.描述算法可以有不同的方式.例如,可以用自然语言和数学语言加以描述,也可以借助形式语言(算法语言)给出精确的说明,也可以用框图直观地显示算法的全貌.算法的要求:(1)写出的算法,必须能解决一类问题,并且能重复使用;(2)算法过程要能一步一步执行,每一步执行的操作必须确切,不能含混不清,而且经过有限步后能得到结果.下列对算法的理解不正确的是( )A.一个算法应包含有限的步骤,而不能是无限的B.算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的C.算法中的每一个步骤都应当是有效地执行,并得到确定的结果D.一个问题只能设计出一种算法解:D算法的有限性是指包含的步骤是有限的,故 A 正确;算法的确定性是指每一步都是确定的,故 B正确;算法的每一步都是确定的,且每一步都应有确定的结果,故 C 正确;对于同一个问题可以有不同的算法,故 D 错误.下列叙述能称为算法的的个数为( )描述:2.程序框图程序框图简称框图,是一种用程序框、流程线及文字说明来表示算法的图形.其中,起、止框是任何流程不可少的,表明程序的开始和结束.输入和输出框可用在算法中任何需要输入、输出的位置.算法中间要处理数据或计算,可分别写在不同的处理框内.一个算法步骤到另一个算法步骤用流程线连接.如果一个框图需要分开来画,要在断开处画上连接点,并标出连接的号码.①植树需要运苗、挖坑、栽苗、浇水这些步骤;②依次进行下列运算:,,,,;③从枣庄乘火车到徐州,从徐州乘飞机到广州;④ ;⑤求所有能被 整除的正整数,即 .A. B. C. D.解:B①、②、③为算法.1+1=22+1=33+1=4⋯99+1=1003x >x +133,6,9,12,⋯2345写出解方程组的一个算法.解:方法一:代入消元法. 第一步,由 得 ;第二步,将 代入 ,得 ,解得 ;第三步,将 代入方程 ,得 ;第四步,得到方程组的解为 .方法二:加减消元法.第一步,方程 两边同乘以 ,得 ;第二步,将第一步所得的方程与方程 作差,消去 ,得 ,解得 ;第三步,将 代入方程 ,得 ,解得 ;第四步,得到方程组的解为 .{2x +y =74x +5y =112x +y =7y =7−2x y =7−2x 4x +5y =114x +5(7−2x )=11x =4x =4y =7−2x y =−1{x =4y =−12x +y =7510x +5y =354x +5y =11y 6x =24x =4x =42x +y =72×4+y =7y =−1{x =4y =−1例题:画程序框图的规则(1)使用标准的图形符号.(2)框图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数流程图符号只有一个进入点和一个退出点.判断框是具有超过一个退出点的惟一符号.(4)判断框分两大类,一类判断框是“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果.(5)在图形符号内描述的语言要非常简练清楚.算法的三种基本逻辑结构顺序结构:语句与语句之间,框与框之间按从上到下的顺序进行.条件分支结构:在一个算法中,经常会遇到一些条件的判断,算法的流程条件是否成立有不同的流向,条件结构就是处理这种过程的结构.循环结构:在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况,这就是循环结构.下列程序框图分别是解决什么问题的算法.解:(1)已知圆的半径,求圆的面积的算法.(2)求两个实数加法的算法.执行如图的程序框图,输出的 ______ .解:T =30四、课后作业 (查看更多本章节同步练习题,请到快乐学)某程序框图如图所示,若输出的 ,则判断框内为( )A. B. C. D.解:AS =57k >4?k >5?k >6?k >7?已知函数 ,对每次输入的一个值,都得到相应的函数值,画出程序框图.解:f (x )={2x +3,3−x ,x 2x ⩾0x <0x答案:1. 关于算法的说法中,正确的是 A .算法就是某个问题的解题过程B .算法执行后可以产生不确定的结果C .解决某类问题的算法不是唯一的D .算法可以无限地操作下去不停止C()答案:解析:2. 下列运算不属于我们所讨论算法范畴的是 A .已知圆的半径求圆的面积B .随意抽 张扑克牌算到二十四点的可能性C .已知坐标平面内两点求直线方程D .加减乘除法运算法则B注意算法需按照一定的顺序进行.()4答案:解析:3. 执行如图所示的程序框图,如果输入的 ,则输出的 属于 .A .B .C .D .D取 ,得输出的 ,即可判断.t ∈[−2,2]S ()[−6,−2][−5,−1][−4,5][−3,6]t =−2S =64. 某批发商按客户订单数额的大小分别给予不同的优惠折扣.计算客户应付货款的算法步骤如下: :输入订单数额 (单位:件);输入单价 (单位:元);:若 ,则折扣率 ;若 ,则折扣率 ;若 ,则折扣率 ;若 ,则折扣率 ;:计算应付货款 (单位:元);:输出应付货款 .S 1x A S 2x <250d =0250⩽x <500d =0.05500⩽x <1000d =0.10x ⩾1000d =0.15S 3T =Ax (1−d )S 4T。
人教版高中数学必修三知识点梳理重点题型(常考知识点)巩固练习算法与程序框图【学习目标】1.初步建立算法的概念;2.让学生通过丰富的实例体会算法的思想;3.让学生通过对具体问题的探究,初步了解算法的含义;4.掌握程序框图的概念;5.会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构;6.掌握画程序框图的基本规则,能正确画出程序框图.【要点梳理】【算法与程序框图 397425 知识讲解1】要点一、算法的概念1、算法的定义:广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等.在数学中,现代意义的算法是指可以用计算机来解决的某一类问题的程序和步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2、算法的特征:(1)确定性:算法的每一步都应当做到准确无误、“不重不漏”.“不重”是指不是可有可无的、甚至无用的步骤,“不漏”是指缺少哪一步都无法完成任务.(2)逻辑性:算法从开始的“第一步”直到“最后一步”之间做到环环相扣,分工明确,“前一步”是“后一步”的前提,“后一步”是“前一步”的继续.(3)有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行.(4)不唯一性:求解某一个问题的算法不一定是唯一的,对于一个问题可以有不同的算法.3、设计算法的要求(1)写出的算法,必须能解决一类问题(如:判断一个整数35是否为质数;求任意一个方程的近似解……),并且能够重复使用.(2)要使算法尽量简单、步骤尽量少.(3)要保证算法正确.且计算机能够执行,如:让计算机计算1×2×3×4×5是可以做到的.4、算法的描述:(1)自然语言:自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等.用自然语言描述算法的优点是通俗易懂,当算法中的操作步骤都是顺序执行时比较容易理解.缺点是如果算法中包含判断和转向,并且操作步骤较多时,就不那么直观清晰了.(2)程序框图:所谓框图,就是指用规定的图形符号来描述算法,用框图描述算法具有直观、结构清晰、条理分明、通俗易懂、便于检查修改及交流等特点.(3)程序语言:算法最终可以通过程序的形式编写出来,并在计算机上执行.要点诠释:算法的特点:思路简单清晰,叙述复杂,步骤繁琐,计算量大,完全依靠人力难以完成,而这些恰恰就是计算机的特长,它能不厌其烦地完成枯燥的、重复的繁琐的工作,正因为这些,现代算法的作用之一就是使计算机代替人完成某些工作,这也是我们学习算法的重要原因之一.事实上,算法中出现的程序只是用基本的语句把程序的主要结构描述出来,与真正的程序还有差距,所以算法描述的许多程序并不能直接运行,要运行程序,还要把程序按照某种语言的严格要求重新改写才行.【算法与程序框图 397425 知识讲解2】要点二、程序框图1、程序框图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.23一个程序框图包括以下几部分:实现不同算法功能的相对应的程序框;带箭头的流程线;程序框内必要的说明文字.4、算法的三种基本逻辑结构(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、框图中的流程线不能出现交叉的现象.若有交叉,则程序语句无法写出;2、各种框图有其固定的格式和作用,不要乱用.如条件结构中不要忘了“是”与“否”,流程线不要忘记画箭头;3、条件分支结构的方向要准确;4、循环结构中,计数变量要赋初值,计数变量的自加不要忘记,自加多少不能弄错.另外计数变量一般只负责计数任务;5、循环结构中循环的次数要严格把握,区分“<”与“≤”等.循环变量的取值与循环结构(当型与直到型)有关,需区分清楚.另外,同一问题用两种不同的结构解决时,其判断条件恰是相反的;6、程序框图不要出现死循环(无限步的循环).【典型例题】类型一:算法的概念例1.(1)下列描述不能看作算法的是().A.做米饭需要刷锅,淘米,添水,加热这些步骤B.洗衣机的使用说明书C.解方程2x2+x-1=0D.利用公式S=πr2,计算半径为4的圆的面积,就是计算π×42(2)下列关于算法的说法:①求解某一类问题的算法是唯一的;②算法必须在有限步操作之后停止;③算法的每一步操作必须是明确的,不能有歧义或模糊;④算法执行后一定产生明确的结果.其中正确的有().A.1个B.2个C.3个D.4个【答案】(1)C (2)C【解析】(1)A、B、D都描述了解决问题的过程,可以看作算法.而C只描述了一个事实,没说明怎么解决问题,不是算法.(2)根据算法的特征可以知道,算法要有明确的开始与结束,每一步操作都必须是明确而有效的,必须在有限步内得到明确的结果,所以②③④正确.而解决某一类问题的算法不一定是唯一的,故①错误.【总结升华】算法一般是机械的,有时需要进行大量的重复计算,只要按部就班去做,总能算出结果.通常把算法过程称为“数学机械化”,数学机械化的最大优点是它可以借助计算机来完成.实际上处理任何问题都需要算法,如:中国象棋有中国象棋的棋谱、走法、胜负的评判准则;而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;再比如申请出国有一系列的先后手续,购买物品也有相关的手续…….举一反三:【变式1】我们已学过的算法有求解一元二次方程的求根公式,加减消元法求二元一次方程组的解,二分法求出函数的零点等,对算法的描述有:①对一类问题都有效;②算法可执行的步骤必须是有限的;③算法可以一步一步地进行,每一步都有确切的含义;④是一种通法,只要按部就班地做,总能得到结果.以上算法的描述正确的有().A.1个B.2个C.3个D.4个【答案】D类型二:算法的描述例2.写出求方程组32142x yx y-=⎧⎨+=-⎩①②的解的算法.【解析】可利用消元法或代入法求解.算法一:第一步:②×2+①,得到5x=14-4.③第二步,解方程③,可得x=2.④第三步,将④代入②,可得2+y=-2.⑤第四步,解⑤得y=-4.第五步,得到方程组的解为24 xy=⎧⎨=-⎩算法二:第一步,由②式移项可以得到x=-2-y.③第二步,把③代入①,得y=-4.④第三步,把④代入③,得x=2.第四步,得到方程组的解为24 xy=⎧⎨=-⎩.【总结升华】通过求解二元一次方程组可知,求解某个问题的算法不一定唯一.对于具体的实例可以选择合适的算法,尽量做到“省时省力”,使所用的算法是最优算法.举一反三:【变式1】试描述求解三元一次方程组1233162x y zx y zx y z++=⎧⎪--=⎨⎪--=-⎩①②③的算法步骤.【解析】算法1:第一步,①+③,得x=5.④第二步,将④分别代入①式和②式可得73 1y zy z+=⎧⎨+=-⎩⑤⑥.第三步,⑥-⑤,得y=-4.⑦第四步,将⑦代入⑤可得z=11.第五步,得到方程组的解为5411xyz=⎧⎪=-⎨⎪=⎩.算法2:第一步,①+②,得2x -y=14. ④ 第二步,②-③,得x -y=9. ⑤ 第三步,④-⑤,得x=5. ⑥第四步,将⑥代入⑤式,得y=-4. ⑦ 第五步,将⑥和⑦代入①式,得z=11.第六步,得到方程组的解为5411x y z =⎧⎪=-⎨⎪=⎩.类型三:算法的设计【算法与程序框图 397425 算法中的例1】例3.设计一个算法,从3个互不相等的数中选出最小的一个数.,并用数学语言表达. 【解析】第一步:假定这3个数中第一个是“最小值”;第二步:将第二个数与“最小值”比较,如果它小于此“最小值”,那么就用这个数取代“最小值”; 第三步:再重复第二步,将第三个数与最小值比较,如果它小于此“最小值”,那么就用这个数取代“最小值”;第四步:此时的“最小值”就是三个数中的最小值,输出最小值.所谓的算法,就是解决该类问题的一般步骤. 举一反三:【变式1】任意给定一个正整数n ,设计出判断n 是否为质数的一个算法. 【解析】第一步,当n =1时,n 既不是质数,也不是合数; 第二步,当n =2时,n 是质数;第三步,当n ≥3时,从2到n -1依次判断是否存在n 的因数(因数1除外),若存在,则n 是合数;若不存在,则n 是质数.类型四:顺序结构的应用【算法与程序框图 397425 程序框图中的例1】 例4.对于一个二次函数2y ax bx c =++,求出顶点坐标.【解析】算法步骤:S1 用户输入二次函数的系数a,b,c ;S2 计算顶点坐标24,24b ac b x y a a-=-=(赋值);S3 输出顶点坐标.举一反三:【变式1】已知x=40,y=3.画出计算z=15x+8y 的值的程序框图. 【答案】程序框图如下图所示.类型五:条件结构的应用例5.已知函数232 1 (0)1 (01)2 (1)x x y x x x x x -<⎧⎪=+≤<⎨⎪+≥⎩,写出求该函数的函数值的算法,并画出程序框图.【解析】该函数是分段函数,因此当给出一个自变量x 的值时,需先判断x 的范围,然后确定利用哪一段的解析式求函数值.画程序框图时,必须采用条件分支结构,因为函数解析式分了三段,所以需要两个判断框,即进行两次判断.算法如下:第一步,输入x .第二步,如果x <0,那么使y=2x -1,输出y ;否则,执行第三步. 第三步,如果0≤x <1,那么使y=x 2+1,输出y ;否则,执行第四步.第四步,y=x 2+2x 第五步,输出y .程序框图如下图所示.【总结升华】凡是必须先根据条件作出判断,然后再决定进行哪一个步骤的问题,在画程序框图时,必须引入判断框,采用条件结构.而像本题求分段函数的函数值的程序框图的画法,如果是分两段的函数,只需引入一个判断框;如果是分三段的函数,需引入两个判断框;分四段的函数需引入三个判断框,依此类推.判断框内的内容是没有固定顺序的.举一反三:【变式1】已知函数 1 (0)()0 (0)1 (0)x f x x x ->⎧⎪==⎨⎪<⎩, 写出求函数()f x 的任一函数值的一个算法并画出程序框图.【解析】记y=f (x).算法:第一步:输入x .第二步:如果x >0,那么使y=-1;如果x=0,那么使y=0;如果x <0,那么使y=1. 第三步:输出函数值y . 程序框图如下图所示.【变式2】如果学生的成绩大于或等于60分,则输出“及格”,否则输出“不及格”.用程序框图表示这一算法过程.【答案】开始结束类型六:循环结构的应用例6.设计一个计算1+3+5+7+…+999的值的算法,并画出程序框图.【解析】算法一:当型循环:第一步,令S=0,i=1.第二步,若i≤999成立,则执行第三步;否则输出S,结束算法.第三步,S=S+i.第四步,i=i+2,返回第二步,程序框图如图(1).算法二:直到型循环:第一步,令S=0,i=1.第二步,S=S+i.第三步,i=i+2.第四步,若i不大于999,转第二步;否则,输出S,结束算法.程序框图如图1-1-8(2).【总结升华】注意直到型循环和当型循环的区别.直到型循环先执行i=i+2,再判断i>999是否成立,若成立才输出S;而当型循环先判断i≤999是否成立,若成立,则执行i=i+2,直到条件i≤999不成立才结束循环,输出S.举一反三:【变式1】给出30个数:1,2,4,7,11,…,要计算这30个数的和,现已给出了该问题的程序框图如图所示,那么框图中判断框处①和执行框②处应分别填入()A.i≤30?;p=p+i-1 B.i≤31?;p=p+i+1C.i≤31?;p=p+i D.i≤30?;p=p+i【答案】D【解析】由于要计算30个数的和,故循环要执行30次,由于循环变量的初值为1,步长为1,故终值应为30即①中应填写i≤30;又由第1个数是1;第2个数比第1个数大1,即1+1=2;第3个数比第2个数大1,即2+2=4;第4个数比第3个数大1,即4+3=7;…故②中应填写p=p+i故选:D.【变式2】(2016春河南周口期中)设计求1+3+5+7+…+31的算法,并画出相应的程序框图.【解析】第一步:S=0;第二步:i=1;第三步:S=S+i;第四步:i=i+2;第五步:若i不大于31,返回执行第三步,否则执行第六步;第六步:输出S值.程序框图如图:类型七:利用算法和程序框图解决实际问题例7.北京获得了2008年第29届奥运会主办权.你知道在申办奥运会的最后阶段,国际奥委会是如何通过投票决定主办权归属的吗?对选出的5个申办城市进行表决的操作程序是:首先进行第一轮投票,如果有一个城市得票超过总票数的一半,那么该城市就获得主办权;如果所有申办城市得票数都不超过总票数的一半,则将得票最少的城市淘汰,然后重复上述过程,直到选出一个申办城市为止.试画出该过程的程序框图.【解析】本题为算法中与现实生活相联系的题目,从选举的方法看,应选择循环结构来描述算法.如图所示:【总结升华】解决与现实相关的问题时首先要理清题意,此循环结构中对用哪一个步骤控制循环,哪一个步骤作为循环体,要有清晰的思路.举一反三:【变式1】儿童乘坐火车时,若身高不超过1.1 m,则无需购票;若身高超过1.1 m,但不超过1.4 m,可买半票;若超过1.4 m,应买全票,请设计一个算法,并画出程序框图.【解析】根据题意,该题的算法中应用条件结构,首先以身高为标准,分成买和免票,在买票中再分出半票和全票.买票的算法步骤如下:第一步:测量儿童身高h.第二步:如果h≤1.1 m,那么免费乘车,否则若h≤1.4 m,则买半票,否则买全票.精品文档 用心整理资料来源于网络 仅供免费交流使用 程序框图如下图所示.【总结升华】本题的程序框图中有两个判断点,一个是以1.1 m 为判断点,1.1 m 把身高分为两段,在大于1.1 m 的一段中,1.4 m 又将其分两段,因此1.4 m 这个判断是套在1.1 m 的判断里的.所以我们用到两个条件结构.。
高考数学专题—算法与程序框图一、基础知识要求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:算法的概念(1)算法概念:通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成. (2)算法的特点:①有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的. ②确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果。
③顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题. ④不唯一性:求解某一个问题的解法不一定是唯一的,但是答案是唯一的。
⑤普遍性:很多具体的问题,都可以设计合理的算法去解决。
2: 程序框图(1)程序框图基本概念:①程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。
学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:1、使用标准的图形符号。
2、框图一般按从上到下、从左到右的方向画。
3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。
判断框具有超过一个退出点的唯一符号。
4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,5、在图形符号内描述的语言要非常简练清楚。
3:算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。
(1)顺序结构:顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来, 按顺序执行算法步骤。
如在示意图中,A 框和B 框是依次执行的,只有在 执行完A 框指定的操作后,才能接着执行B 框所指定的操作。
(2)条件结构:条件结构是指在算法中通过对条件的判断根据条件是否成立而选择不同流向的 算法结构。
预习高中数学必修3[算法与程序框图]知识点总结,超详细
寒假来临,小简老师为大家总结了一些预习内容。
以下是数学必修3第一章知识点《算法初步》,本章节内容在高考中会有1道选择题或填空题,5分左右。
难道偏低,同学们一定要掌握。
算法与程序框图知识点
算法与程序框图练习题
更多精彩文章
●数学基础太差, 还有救吗? 高中数学各年级学习方法权威指导!
●史上最适合学英语的10部英语动画电影!果断收藏!
●高中物理实验操作及方法大汇总!实验考试题都出自这里!。
第二节算法与程序框图一、基础知识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.答案:32考点二循环结构考法(一)由程序框图求输出(输入)结果[例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=()A.10 B.16C.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是偶数,则下一步变成n 2.这种游戏的魅力在于无论你写出一个多么庞大的数字,最后必然会落在谷底,更准确地说是落入底部的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成立时,⎩⎪⎨⎪⎧x ≥0,y ≥0,x +y ≤1输出S =2x +y ,下面用线性规划的方法求此时S 的最大值.作出不等式组表示的平面区域如图中阴影部分所示,由图可知当直线S =2x +y 经过点M (1,0)时S最大,其最大值为2×1+0=2,故输出S 的最大值为2.答案:2。