2018高中数学北师大版必修3课时作业:第二章 算法初步 课时作业 9 算法的基本思想 含答案
- 格式:doc
- 大小:96.50 KB
- 文档页数:7
【XXXX高中数学(北师大版,必修三)课时作业第二章算法)- |
3.2循环语句
类目标1。
理解给定的两个循环语句并应用它们。
2.将两个循环语句应用于程序特定的问题,并找出For循环和Do循环之间的联系和区别。
1。
循环结构是算法中的基本结构。
_ _ _ _ _ _ _是表达循环结构的最常见语句之一。
适用于_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _的回路结构。
2.for语句的一般形式是
代表_ _ _ _ _ _ _ _ _ _ _ _ _到_ _ _ _ _ _ _ _ _ _ _ next
3。
循环数事先未知的循环结构。
Do LOOP语句的一般形式是Do LOOP
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
1,选择题1。
以下算法:
111
①求和2+2+?+2;
123100
②已知两个数字可以求出它们的商;
③已知函数定义在区间上,端点和点的函数值通过将区间分成十个
相等的部分来获得。
(4)知道三角形一边的长度和这一边的高度,找到它的面积。
其中,循环语句可能是()
a。
①②b.①③c.①④d.③④2。
根据以下陈述,输出结果为()I = 0s = 0o
S = S+I I = I+1
循环,而S11 B.i≥11 C.i≤11 D.i。
1算法概念的诠释同学们也许对算法这个概念很陌生,但其实大家在日常生活中已经接触过很多算法了,广义地说,算法就是做某一件事情的步骤或程序.菜谱是做菜肴的“算法”,洗衣机的使用说明书是操作洗衣机的“算法”.每个算法都闪耀着人类的智慧,阅读和学习这些东西会给我们带来一种难以用语言表达的满足感和快感.在以后的学习和工作中我们会不断从实际应用中了解和领会算法是如何解决各个领域的实际问题,推动人类文明的发展的.一、算法的特征1.确定性算法中的每条运算规则必须是明确定义的、可行的,每一个步骤只能有一个确定的后继步骤,运行终止应得到问题的解答或指出问题没有解答.2.有限性一个算法必须保证在执行有限步后结束,至少不能出现无限循环或死循环.在此基础上越简洁越快越好.越简洁,占用内存越少,对设备的要求越基本;越快,这个意义就不用说了吧.比如一个计算对方导弹轨迹的算法,如果等你算出来,那边导弹已经落地了,那还有什么意义?二、算法的思想专业的事交给专业的人去做.普通人只要按专业人士给出的步骤一步一步地去完成,这就是算法的思想,即程序思想,你也可以理解为傻瓜化思想.另外,算法强调的是通性通法,即给出一个算法,实际上是给出了一种解决一类问题的方法.比如你给出一个计算圆的面积的算法,它应该能计算各种半径的圆的面积,而不是只适用于半径为某一具体数的圆.三、特别提示1.算法中的每一步应该是确定的并且能够有效地执行且得到确定的结果,而不应当模棱两可,如求的近似值却没有要求近似的精确度,则该问题不能求解.2.现代算法主要是面向计算机的,如果算法中没有输出,程序也能运行,但是运行结果无法输出.如果想要得到结果,那就要有输出.3.只要有公式可以利用,利用公式解决问题是最理想、最简便的方法,比如在写解方程x 2-3x -4=0的算法时,用求根公式来做,步骤则较为简洁.4.求解某一个问题的算法一般不是唯一的,我们通常选择较为简单的算法. 四、典例分析例1 已知一个等边三角形的周长为a ,求这个三角形的面积,设计一个算法解决这个问题. 分析 对于已知等边三角形的边长求面积的题目同学们已经很熟悉,回顾其中的解题过程不难得到这个问题的算法步骤.但学会清晰条理地表达自己的想法,也是一个基本的要求. 解 算法步骤如下: 第一步,输入a 的值. 第二步,计算l =a3的值.第三步,计算S =34×l 2的值. 第四步,输出S 的值.例2 下面给出了一个问题的算法: 第一步,输入x .第二步,若x ≥4,则执行第三步,否则执行第四步. 第三步,输出2x -1. 第四步,输出x 2-2x +3. 这个算法解决的问题是什么?分析 依据题目给出的算法步骤依次执行,是读懂算法的一个重要而基本的办法. 解 这个算法先是输入一个变量x ,当x ≥4时输出2x -1,当x <4时输出x 2-2x +3,不难发现这个算法解决的问题是求分段函数f (x )=⎩⎪⎨⎪⎧2x -1,x ≥4,x 2-2x +3,x <4的函数值.2 典型算法举例1.解方程(方程组)、不等式的算法例1 用自然语言描述求一元二次方程ax 2+bx +c =0的根的算法.思维切入 对于求方程的根,解方程组这样的数值型的问题,我们都有具体的计算方法,只要我们把平时的计算方法严格地按步骤描述出来即可.因此我们很容易得到下面的算法. 解 用自然语言来描述算法, 第一步,计算Δ=b 2-4ac ;第二步,如果Δ<0,则原方程无实数解,输出“无实数解”;否则(Δ≥0)x 1=-b +b 2-4ac2a,x 2=-b -b 2-4ac 2a,输出x 1,x 2的值.点评 第二步中包含了一个判断Δ=b 2-4ac 是否小于零的条件,并根据判断结果进行不同的处理.算法是否“健壮”,也是衡量算法优劣的重要指标.如果思维不严谨,比如这个算法忘记考虑Δ=b 2-4ac 小于零的情形,实际运算一旦遇到,则会导致不是出错就是死机,那这个算法就是不“健壮”的. 例2 写出解x 2-4x +3<0的算法.思维切入 只要把平时的固定解法有条理地写出来,即为解不等式的算法. 解 第一步,求出对应方程的根x 1=1,x 2=3; 第二步,确定根的大小x 1<x 2; 第三步,写出解集{x |1<x <3}. 2.套用公式求值的算法例3 已知摄氏温度C 与华氏温度F 的关系是F =C ×95+32,写出由摄氏温度求华氏温度的算法.思维切入 这是一个函数求值问题,给C 赋值再代入解析式求F . 解 第一步,输入摄氏温度C ; 第二步,代入F =C ×95+32;第三步,输出华氏温度F .点评 平时计算我们只注重第二步,其他步骤往往忽略了,算法却讲究“按部就班”,这类问题的算法一般分为三步:第一步输入值,第二步套用公式,第三步输出结果. 3.判断性质型问题的算法例4 试描述判断圆(x -a )2+(y -b )2=r 2和直线Ax +By +C =0位置关系的算法. 思维切入 直线与圆的关系有三种:相离、相切、相交,如果圆心到直线的距离d >r ,则直线与圆相离,d =r 则直线与圆相切,d <r 则直线与圆相交.因此我们可以先求出圆心到直线的距离d ,然后再和r 比较.解 第一步,输入圆心的坐标、直线方程的系数和半径r ; 第二步,计算z 1=Ax 0+By 0+C ; 第三步,计算z 2=A 2+B 2; 第四步,计算d =|z 1|z 2; 第五步,如果d >r 则相离,如果d =r 则相切,如果d <r 则相交.点评 算法要求分解成简单计算,不要直接计算d =|Ax 0+By 0+C |A 2+B 2.一个比较大的程序,会分成若干模块,一个模块出了问题只需要修改这一个模块,而不需要全盘翻工.4.累加、累乘问题的算法例5用自然语言描述求解mul=1×2×3×4×5×6问题的算法.思维切入根据算法的特点,我们学过的加、减、乘、除运算法则都是算法,只要按照具体的规则有步骤地描述过程,便有了该题的算法.解第一步,计算1×2,得2;第二步,将第一步中的运算结果2与3相乘得6;第三步,将第二步中的运算结果6与4相乘得24;第四步,将第三步中的运算结果24与5相乘得120;第五步,将第四步中的运算结果120与6相乘得720.点评如果让人一步一步地做,太枯燥了.但这恰好是计算机的优势.所以算法好不好,还分让谁来执行,对人来讲是奇笨无比的办法,对计算机却可能是一个好办法.思维拓展该算法包含一个重复操作的过程是循环结构,我们可将算法改造得更为简练、科学.解第一步,设i=1,P=1;第二步,如果i≤6执行第三步,否则执行第五步;第三步,计算P×i并将结果代替P;第四步,将i+1代替i,转去执行第二步;第五步,输出P.点评i称为计数变量,每一次循环它的值增加1,由1变到6,P是一个累乘变量,每一次循环得到一个新的结果,然后新的结果代替原值.3算法框图画法全知晓一、画算法框图的基本步骤第一步,设计算法,因为算法的设计是画算法框图的基础,所以画算法框图前,首先写出相应的算法步骤,并分析算法需要用哪种基本逻辑结构(顺序结构、选择结构、循环结构)完成.第二步,把算法步骤转化为对应的算法框图,在这种转化过程中往往需要考虑很多细节,是一个将算法“细化”的过程.第三步,将所有步骤的算法框图用流程线连接起来,并加上终端框,得到整个表示算法的算法框图.二、画算法框图的规则1.使用标准的框图符号.2.框图一般按从上到下、从左到右的方向来画.3.除判断框外,大多数框图符号只有一个进入点和一个退出点,判断框是唯一具有超过一个退出点的符号.4.在图形符号内描述的语言要简练清楚. 三、典例分析 1.顺序结构顺序结构是最简单的算法结构,是任何一个算法都离不开的结构.若一个算法由若干个依次执行的步骤组成,则在画算法框图时,可直接由顺序结构完成.因为在其他的结构中都会涉及到顺序结构,所以关于顺序结构的画法,在此不再单独叙述. 2.选择结构设计算法框图时,若是分段函数或执行时需要先判断才能执行的问题,则需要用到判断框,引入选择结构.例1 如图,在边长为4的正方形ABCD 的边上有一点P ,沿着BCDA 的方向由点B 向点A 运动,设点P 运动的路程为x (0<x <12),△APB 的面积为y ,画出y 关于x 的关系式的算法框图.分析 随着点P 的位置不同,△APB 的面积与路程x 有不同的对应关系,所以需要先判断点P 的位置,这就需要用到选择结构,先根据题意写出算法,再根据算法画出算法框图.即 第一步,按照题意,y 与x 的关系满足分段函数: y =⎩⎪⎨⎪⎧2x ,0<x ≤4,8,4<x ≤8,2(12-x ),8<x <12.第二步,用合适的含选择结构的算法框图表示该分段函数. 解 算法框图如图所示.点评 该题中的分段函数是分三段的函数,需引入两个判断框.至于判断框的内容是没有顺序的,但与下一图形的内容或操作必须相互对应.同时,在画算法框图时,要特别注意图形符号的规范性. 3.循环结构如果问题中进行了重复的运算,且有相同的规律,就可根据需要引入相关变量,利用这些规律组成一个循环体,用循环结构来解决.例2 某机械厂为增加产值进行了技术革新.据统计2009年的生产总值为500万元,技术革新后预计每年的生产总值比上一年增加5%,问最早要到哪一年生产总值才能超过600万元,试用算法框图表示.分析 用变量n ,a 分别表示所经过的年数和生产总值的数量,注意变量的初始值以及递加的值是多少.由题意知第n 年后的生产总值为a =500(1+0.05)n ,此时为(2009+n )年.由于题中进行了重复的运算,故应引入循环结构. 解 算法框图如图所示.4 例说选择结构选择结构是三种基本逻辑结构之一,可以解决一些含有条件判断的算法问题,如分段函数求值问题、比较大小问题、分类讨论问题和一些实际问题等.下面就其应用略举两例,供同学们学习时参考. 一、分段函数求值问题例1 已知函数y =⎩⎪⎨⎪⎧-x +1,x >0,0,x =0,x +3,x <0,请设计算法框图,要求输入自变量x ,输出函数值y .分析 输入自变量x 的值,首先判断x 与0的大小关系,再代入相应的表达式求函数值. 解 算法框图如图.点评求分段函数的函数值,需先判断再执行步骤,需要引入选择结构.在使用选择结构时,要注意判断条件的设定不重不漏,确保各种可能的判断值有正确、唯一的流向.二、实际应用问题例2 邮政电子汇款单笔最高限额为1万元,每笔汇款的资费标准为汇款金额的1%,最低收费为2元,最高收费为50元.试编写一算法框图求出当汇款x (0<x≤10 000)元时,应交纳资费多少元.分析由题意分析,当x≤200时,应交纳资费2元,当x≥5 000时,应交纳资费50元,所以引入选择结构,200和5 000是两个分段点.解算法框图如图.点评很多在一些需要判断的实际问题,比如水电费,纳税额,结构工资,身体各项指标是否正常等,一般都会用到选择结构,在设计算法框图时,可先根据题意,设计算法,再根据算法画出算法框图.5循环结构的应用在循环结构中,经常会出现两个变量:计数变量和累计变量.计数变量往往出现在循环结构中,起到循环计数的作用,这个变量一般出现在执行或终止循环体的条件中;而累计变量用于输出结果,往往与计数变量同步执行,一般有累加与累乘两种.下面举例说明循环结构的应用.一、求和或求积问题例1 设计两个求1+3+5+…+2 011的值的算法的算法框图.分析 本题是一个累加问题,由于加数较多,采用逐一相加的思路不可取,引入变量,应用循环结构解决:(1)设一个循环变量为i ,初始值为1;再设一个累加变量为S ,初始值为0.(2)循环体为S =S +i ,i =i +2.(3)终止条件为i >2 011. 解 两种方法:算法框图如图1和如图2所示.点评 涉及求多项的和与积的算法框图要用到循环结构和选择结构.画图时要注意循环变量的初始值、终值以及循环变量的增量在程序中的作用.本题代表了一类相邻两个数的差为常数的求和问题的解法,在设计算法框图时要注意前后两个加数相差2,此时计数变量不是i =i +1,而是i =i +2,要根据题意灵活地改变算法中的相应部分. 二、叠加求值例2 画出求式子(共9个3)的值的一个算法框图.分析 本题是一个叠加问题,由于前后重复了多次相同的运算,所以应采用循环结构来设计算法,但利用循环结构实现算法需搞清初始值是什么.本题中初始值可设定为a 1=13,第一次循环得到a 2=13+a 1,第二次循环得到a 3=13+a 2,……,a 9=13+a 8,共循环了8次.解 算法框图如图所示.点评如果算法问题里涉及的运算有许多重复的步骤,且数之间有相同的规律,那么可引入变量,应用循环结构.在循环结构中,要注意根据条件,设计合理的计数变量、累计变量,特别要注意条件的表述要恰当、精确,以免出现多一次循环或少一次循环的情况.6三种逻辑结构辨与析算法中有三种逻辑结构,即顺序结构、选择结构、循环结构,同学们初学这三种结构,容易混淆.本文将这三种结构进行比较,希望同学们能深刻体会这三种结构的差异与共同点.一、三种基本逻辑结构二、三种基本逻辑结构的共同特点1.只有一个入口.2.只有一个出口,注意一个菱形判断框有两个出口,而一个选择结构只有一个出口,不要将菱形框的出口和选择结构的出口混为一谈.3.结构内的每一部分都有机会被执行到,即对每一个框来说都应当有一条从入口到出口的路径通过它,如图1中的A,没有一条从入口到出口的路径通过它,是不符合要求的算法框图.4.结构内不存在死循环,即无终止的循环,如图2就是一个死循环,在算法框图中是不允许有死循环出现的.三种基本结构的这些共同特点,也是检查一个算法框图或算法是否正确、合理的方法和试金石.7条件语句小聚1.“If—Then”语句“If—Then”语句的一般格式如下对应的框图如图1所示图1计算机在执行“If—Then”语句时,首先对If后的条件进行判断,如果符合条件,就执行Then后面的语句,若不符合条件,则直接结束该条件语句,转而执行后面的语句.2.“If—Then—Else”语句“If—Then—Else”语句的一般格式如下对应的框图如图2所示图2计算机在执行“If—Then—Else”语句时,首先对If后的条件进行判断,如果符合条件,则执行Then后面的“语句1”;若不符合条件,则执行Else后面的“语句2”.3.条件语句“If—Then—Else”可以嵌套,其格式为注意:使用条件语句时应注意以下几点:(1)条件语句必须以If语句开始,以End If语句结束,一个End If语句必须和一个If语句对应.(2)如果我们的程序只需对条件为真的情况作出处理,不需处理条件为假的情况,则条件语句省略Else,格式由If—Then—Else语句变成If—Then语句.8透析循环语句两种循环语句1.For语句的一般形式是执行步骤:当计算机执行For语句时,一般先执行一次循环体,当循环变量在初始值与终值之间时,执行循环体;当循环变量超过终值时,不再执行循环体,跳出循环体执行后面的语句.2.Do Loop语句的一般形式是计算机执行Do Loop语句,先执行一次循环体,若符合条件,继续执行循环体;当不符合条件时,跳出循环,执行Loop While后的语句.9算法在生活实际中的应用数学来源于生活,服务于社会,数学与生活息息相关,数学是有用的,在生活中做一件事情的方法和步骤有多种,生活中的许多问题都可以用算法描述,用算法框图表达.下面请欣赏三例算法问题.一、第29届奥林匹克运动会的申办例1北京成功举办了2008年第29届奥林匹克运动会.你知道在申办奥运会的最后阶段,国际奥委会是如何通过投票决定主办权归属的吗?对选出的5个申办城市进行表决的操作程序是首先进行第一轮投票,如果有一个城市得票数超过总票数的一半,那么该城市将获得举办权;如果所有申办城市的得票数都不超过总票数的一半,则将得票数最少的城市淘汰,然后重复上述过程,直到选出一个申办城市为止.请设计一个算法表述上面过程,并画出算法框图.解算法步骤如下:第一步,投票;第二步,统计票数,如果有一个城市得票数超过总票数的一半,那么该城市就获得主办权;否则淘汰得票数最少的城市,转第一步;第三步,宣布主办城市.算法框图如图所示:点评算法本身就是用计算机解决一些实际问题的方法,一定要充分理解算法的特点.二、奖金的发放例2某科研所决定拿出一定量的资金对科研人员进行奖励,按照科研成果价值的大小决定奖励前10名.第1名得全部奖金的一半多1万元,第2名得剩余的奖金的一半多1万元,第3名再得剩余奖金的一半多1万元,以此类推,到第10名恰得奖金1万元,请设计一个算法语句求科研所最初拿出多少奖金进行奖励,并画出算法框图.解 第10名的奖金额S 1=1万元,第9名和第10名的总奖金额S 2=(1+1)×2=4万元,第8名、第9名和第10名的总奖金额S 3=(4+1)×2=10万元......总奖金额S 10=(S 9+1)×2,得递推公式S 1=1,S n +1=(S n +1)×2,n =1,2, (9)算法语句:算法框图如图所示:三、李白酒壶中的酒例3 李白是我国唐代的一位伟大诗人,平时很喜欢喝酒,有一首打油诗讲了李白买酒的一件趣事,“无事街上走,提壶去买酒,遇店加一倍,见花喝一斗,三遇店和花,喝光壶中酒.”问:李白的酒壶中原来有多少酒?请用算法解释,画出算法框图并写出算法语句.解 通过逆向思考,李白遇到第三枝花时,壶中有1斗酒,遇到第三个店时,壶中有12斗酒;遇到第二枝花时,壶中有1+12=32斗酒,遇到第二个店时,壶中有12×32=34斗酒;遇到第一枝花时,壶中有1+34=74斗酒,遇到第一个店时,壶中有12×74=78斗酒. 根据以上分析可得算法步骤如下:第一步,S =0;第二步,I =1;第三步,S =S +12; 第四步,I =I +1;第五步,如果I >3,则输出S ;否则,转第三步. 算法框图如图所示:算法语句:。
第二章章末归纳总结A级基础巩固一、选择题1.执行如图所示的程序框图,则输出S的值(C)A.10B.17C.19 D.36[解析]本题考查算法的循环结构和层层分析法.k=2,S=2;k=3,S=5;k=5,S=10;k=9,S=19,k=17时,结束循环,此时S =19.注意k与S循环时相匹配的取值.2.执行如图所示的程序框图,输出的S值为(C)A.1B.3C.7D.15[解析]本题考查了程序框图的有关概念.S1:k=0,S=0,S2:S=20=1,k=1,S3:S=1+21=3,k=2,S4:S=3+22=7,k=3,输出S=7.3.执行如图所示的程序框图,当输入的x的值为4时,输出的y的值为2,则空白判)断框中的条件可能为(BC.x≤4 D.x≤5[解析]输入x=4,若满足条件,则y=4+2=6,不合题意;若不满足条件,则y=log24=2,符合题意,结合选项可知应填x>4,故选B.4.在如图所示的算法语句中输入x=1 000,y=2,则输出的结果M是(D)输入x,yM=2*x+4*y输出MA.2 004 B.2 006C.2 007 D.2 008[解析]M=2×1 000+4×2=2 008.5.读下面的算法语句,输出的结果是(C)I=1S=0DoS=2*S+1I=I+1Loop While I<=4输出SA.2B.10C.15D.20[解析]当I=1时,S=0×2+1,当I=2时,S=1×2+1=3;当I=3时,S=3×2+1=7;当I =4时,S =7×2+1=15.6.(2019·四川达州月考)运行如图所示的程序框图,输出的x 值是( A)A .-2B .-3C .-4D .-5[解析] c =8,x =9-8-3=-2,循环结束,输出x 的值是-2.二、填空题7.阅读下面的算法语句,如果输入x =-2,则输出结果为_-5___. 输入x ; If x <0 Then y =3*x +1 Else If x >0 Then y =2*x -3 Else y =0 End If End If 输出y .[解析] 本题的算法表示的是求分段函数 y =⎩⎪⎨⎪⎧2x -3(x >0)0 (x =0)3x +1(x <0)的值,显然,当x =-2时,y =3x +1=-5.8.执行下面的程序框图,若输入的a ,b 的值分别为0和9,则输出的i 的值为_3___.[解析]该题考查循环结构的程序框图的运行,考查考生的计算能力.输入a=0,b=9,第一次循环:a=0+1=1,b=9-1=8,i=1+1=2;第二次循环:a=1+2=3,b=8-2=6,i=2+1=3;第三次循环:a=3+3=6,b=6-3=3,a>b成立,所以输出i的值为3.三、解答题9.根据下面的程序,仔细观察后画出其算法的流程图.i=-1Dox=iy=x*x*xi=i+0.2Loop While i<=1输出y[解析]流程图如下图所示.B级素养提升一、选择题1.如图,该流程图是求函数f(x)=x2-3x+5,当x∈{0,3,6,9,…,60}时函数值的一个流程图,则①处应填(A)A.x=x+3 B.x=3xC.3x=x D.x+3=x[解析]给出的数为0,3,6,9,…,60,后一个数比前一个数大3.2.执行下面语句的过程中,执行循环体的次数是(A)i=1Doi=i+1i=i*iLoop While i<10输出i.A.2 B.0C.3 D.1[解析]算法语句的执行过程是第一次执行循环体:i=1i=1+1=2i=2×2=4i=4<10成立第二次执行循环体:i=4i=4+1=5i=5×5=25i=25<10不成立退出循环,共执行循环体2次.二、填空题3.如果执行如图所示的程序框图,输入x=4.5,则输出的数i=_4___.[解析]本题考查程序框图,循环结构等算法知识.i=1,x=4.5-1=3.5,i=2,x=3.5-1=2.5,i=3,x=2.5-1=1.5,i=4,x=1.5-1=0.5,∵0.5<1,∴输出i=4.4.执行下面的程序框图,若输入的x的值为1,则输出的n的值为_3___.[解析]由x2-4x+3≤0,解得1≤x≤3,当x=1时,满足1≤x≤3,所以x=1+1=2,n=0+1=1;当x=2时,满足1≤x≤3,所以x=2+1=3,n=1+1=2;当x=3时,满足1≤x≤3,所以x=3+1=4,n=2+1=3;当x=4时,不满足1≤x≤3,所以输出n=3.三、解答题5.给出30个数:1,2,4,7,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推,要计算第30个数的大小.现在已给出了该问题算法的流程图,如图所示.(1)请在图中判断框①处和执行框②处填上合适的语句,使之能完成该题算法功能;(2)根据流程图写出程序.[解析](1)①中应填写“i>30?”,②中应填写“P=i”.(2)程序如下:P=1S=0i=1DoS=S+PP=ii=i+1Loop While i<30输出S6.猴子第一天摘下若干个桃子,当即吃一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半又多吃了一个;以后每天早上都吃前一天剩下的一半零一个.到第十天早上想再吃时,见只剩下一个桃子了.设计算法流程图求猴子第一天共摘了多少个桃子?[解析]算法流程图如图所示.7.到银行办理个人异地汇款(不超过100万)时,银行要收取一定的手续费:汇款额不超过100元,收取1元手续费;超过100元但不超过5 000元,按汇款额的1%收取;超过5 000元,一律收取50元手续费.请用条件语句描述汇款额x(元)与银行收取的手续费y(元)的关系,写出其程序.[解析] 我们可求得手续费y 与汇款额x 之间的关系式为(单位:元):y =⎩⎨⎧1 (0<x ≤100),0.01x (100<x ≤5 000),50 (5 000<x ≤1 000 000).用复合If 语句描述算法:输入一个不大于1 000 000的正数x ; If x ≤100 Then y =1 ElseIf x ≤5 000 Then y =0.01*x Else y =50 End If End If 输出y。
姓名,年级:时间:课时作业(十五)(第一次作业)1.被反复执行的某一处理步骤是( )A.循环体B.循环线C.程序D.路径答案A2.如图所示,该算法框图包含哪些基本结构( )①循环结构②顺序结构③选择结构A.①② B.②③C.① D.①②③答案D2题图3题图3.如图给出的是计算错误!+错误!+错误!+…+错误!的值的一个算法框图,其中判断框中应填入的条件是( )A.i〉10 B.i〈10C.i〉20 D.i〈20答案A4.若执行如图所示的框图,输入N=5,则输出的数等于()A。
54B.错误!C.错误!D。
错误!答案D解析根据程序框图可知,该程序框图的功能是计算S=11×2+错误!+错误!+…+错误!。
因为输入的N=5,所以满足条件k<N的结果为S=错误!+错误!+错误!+错误!+错误!=(1-错误!)+(错误!-错误!)+…+(错误!-错误!)=错误!.故选D。
5.阅读如图所示的程序框图,运行相应的程序,输出的结果是()A.2 B.4C.8 D.16答案C解析S=2,n=1;当n=1时,S=错误!=-1;当n=2时,S=错误!=错误!;当n=4时,S=错误!=2,n=8.符合条件,故输出8。
6.某程序框图如图所示,若输出的S=57,则判断框内为()A.k>4 B.k>5C.k〉6 D.k>7答案A解析第一次执行后,k=2,S=2+2=4;第二次执行后,k=3,S=8+3=11;第三次执行后,k=4,S=22+4=26;第四次执行后,k=5,S=52+5=57,此时结束循环,故判断框中填k>4。
7.(2019·郑州模拟)执行如图所示的算法框图,若p=0.8,则输出的n=( )A.3 B.4C.5 D.6答案B解析依次运行算法框图中的程序可得:①S=0+错误!=错误!,n=2,满足S<0。
8条件,继续运行;②S=错误!+错误!=错误!,n=3,满足S〈0.8条件,继续运行;③S=错误!+错误!+错误!=错误!,n=4,不满足S>0.8,停止运行,输出4。
第二章算法初步§1算法的基本思想课时目标通过分析解决具体问题的过程与步骤,体会算法的思想,了解算法的含义,能用自然语言描述解决具体问题的算法.1.算法是解决某类问题的一系列____________,只要按照这些步骤执行,都能使问题得到解决.一般来说,“用算法解决问题”都是可以利用__________帮助完成的.2.同一个问题可能存在____种算法;利用“平台思想”,一个算法也可以解决某一类问题.一、选择题1.下面四种叙述能称为算法的是( )A.在家里一般是妈妈做饭B.做米饭需要刷锅、淘米、添水、加热这些步骤C.在野外做饭叫野炊D.做饭必须要有米2.下列对算法的理解不正确的是( )A.算法有一个共同特点就是对一类问题都有效(而不是个别问题)B.算法要求是一步步执行,每一步都能得到唯一的结果C.算法一般是机械的,有时要进行大量重复计算,它的优点是一种通法D.任何问题都可以用算法来解决3.下列关于算法的描述正确的是( )A.算法与求解一个问题的方法相同B.算法只能解决一个问题,不能重复使用C.算法过程要一步一步执行,每步执行的操作必须确切D .有的算法执行完后,可能无结果4.计算下列各式中S 的值,能设计算法求解的是( )①S =12+14+18+…+12100②S =12+14+18+…+12100+…③S =12+14+18+…+12n (n≥1且n ∈N +)A .①②B .①③C .②③D .①②③5.关于一元二次方程x 2-5x +6=0的求根问题,下列说法正确的是( ) A .只能设计一种算法 B .可以设计两种算法 C .不能设计算法D .不能根据解题过程设计算法 6.对于算法:第一步,输入n .第二步,判断n 是否等于2,若n =2,则n 满足条件;若n >2,则执行第三步.第三步,依次从2到(n -1)检验能不能整除n ,若不能整除n ,则执行第四步;若能整除n ,则执行第一步. 第四步,输出n .满足条件的n 是( )7.已知直角三角形两条直角边长分别为a ,b .写出求斜边长c 的算法如下: 第一步,输入两直角边长a ,b 的值.第二步,计算c =a 2+b 2的值. 第三步,________________.将算法补充完整,横线处应填_____________________________________________. 8.下面给出了解决问题的算法: 第一步:输入x .第二步:若x ≤1,则y =2x -1,否则y =x 2+3. 第三步:输出y .(1)这个算法解决的问题是________________________________________________; (2)当输入的x 值为________时,输入值与输出值相等. 9.求1×3×5×7×9×11的值的一个算法是: 第一步,求1×3得到结果3;第二步,将第一步所得结果3乘5,得到结果15;第三步,______________________________________________________________; 第四步,再将105乘9得到945;第五步,再将945乘11,得到10 395,即为最后结果. 三、解答题10.已知某梯形的底边长AB =a ,CD =b ,高为h ,写出一个求这个梯形面积S 的算法.11.函数y =⎩⎪⎨⎪⎧-x +1 x >00 x =0x +1 x <0,写出给定自变量x ,求函数值的算法.能力提升12.某铁路部门规定甲、乙两地之间旅客托运行李的费用为:c =⎩⎪⎨⎪⎧0.53×ω, ω≤50,50×0.53+ω-50×0.85, ω>50.其中ω(单位:kg)为行李的质量,如何设计计算托运费用c (单位:元)的算法.13.从古印度的汉诺塔传说中演变了一个汉诺塔游戏:(1)有三根杆子A ,B ,C ,A 杆上有三个碟子(大小不等,自上到下,由小到大),如图.(2)每次移动一个碟子,小的只能叠在大的上面. (3)把所有碟子从A 杆移到C 杆上. 试设计一个算法,完成上述游戏.1.算法的特点(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.(2)确定性:算法中的每一步应该是确定的并且能有效地执行且能得到确定的结果,而不应当是模棱两可的.(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决.2.算法与数学问题解法的区别与联系(1)联系算法与解法是一般与特殊的关系,也是抽象与具体的关系.(2)区别算法是解决某一类问题所需要的程序和步骤的统称,也可理解为数学中的“通法通解”;而解法是解决某一个具体问题的过程和步骤,是具体的解题过程.§1算法的基本思想知识梳理1.步骤或程序计算机 2.多作业设计1.B[算法是解决一类问题的程序或步骤,A、C、D均不符合.]2.D3.C[算法与求解一个问题的方法既有区别又有联系,故A不对;算法能重复使用,故B不对;每个算法执行后必须有结果,故D不对;由算法的有序性和确定性可知C 正确.]4.B[因为算法的步骤是有限的,所以②不能设计算法求解.]5.B[算法具有不唯一性,对于一个问题,我们可以设计不同的算法.]6.A[此题首先要理解质数,只能被1和自身整除的大于1的整数叫质数.2是最小的质数,这个算法通过对2到(n-1)一一验证,看是否有其他约数,来判断其是否为质数.] 7.输出斜边长c的值8.(1)求分段函数y =⎩⎪⎨⎪⎧2x -1x≤1,x 2+3x>1的函数值 (2)19.将第二步所得的结果15乘7,得到结果10510.解 第一步,输入梯形的底边长a 和b ,以及高h. 第二步,计算a +b 的值.第三步,计算(a +b)×h 的值. 第四步,计算S =a +b ×h2的值. 第五步,输出结果S.11.解 算法如下:第一步,输入x ;第二步,若x>0,则令y =-x +1后执行第五步,否则执行第三步; 第三步,若x =0,则令y =0后执行第五步,否则执行第四步; 第四步,令y =x +1; 第五步,输出y 的值.12.解 第一步,输入行李的质量ω.第二步,如果ω≤50,则令c =0.53×ω,否则执行第三步. 第三步,c =50×0.53+(ω-50)×0.85. 第四步,输出托运费c.13.解 第一步,将A 杆最上面碟子移到C 杆. 第二步,将A 杆最上面碟子移到B 杆. 第三步,将C 杆上的碟子移到B 杆. 第四步,将A 杆上的碟子移到C 杆. 第五步,将B 杆最上面碟子移到A 杆. 第六步,将B 杆上的碟子移到C 杆. 第七步,将A 杆上的碟子移到C 杆.。
第二章 §1A 级 基础巩固一、选择题1.算法的有限性是指( C ) A .算法的最后必包含输出B .算法中每个操作步骤都是可执行的C .算法的步骤必须有限D .以上说法均不正确[解析] 由算法的要求可知,一个算法必须执行有限步后得出结果. 2.下面的结论正确的是( D ) A .一个程序的算法步骤是可逆的 B .一个算法可以无止境地运算下去 C .完成一件事情的算法有且只有一种 D .设计算法要本着简单方便的原则[解析] 选项A 不正确,算法只需要每一步都可以顺利进行,并且结果唯一,不能保证可逆.选项B 不正确,一个算法必须在有限步内完成,不然就不符合算法的有穷性.选项C 不正确 ,一般情况下,一个问题的解决办法不止一个.选项D 正确,设计算法要尽量使程序运算简单,节约时间,故选D .3.下面对算法描述正确的项是( C ) A .算法只能用自然语言来描述 B .算法只能用图形方式来表示 C .同一个问题可以有不同的算法 D .同一个问题算法不同,结果必然不同[解析] 算法的描述方式不唯一,且同一个问题可以有不同算法,但无论哪个算法得到的结果都是一样的.4.下列语句表达中是算法的有( C )①从济南到巴黎可以先乘火车到北京,再坐飞机抵达; ②利用公式S =12ah 计算底为1,高为2的三角形的面积;③12x >2x +4; ④求M (1,2)与N (-3,-5)两点所在直线的方程,可先求MN 的斜率,再利用点斜式求方程.A .1个B .2个C .3个D .4个[解析] 算法是解决某类问题的步骤与过程,这个问题并不仅仅限于数学问题,①②④都表达了一种算法,故应选C .5.下列说法中,能称为算法的是( B ) A .巧妇难为无米之炊B .炒菜需要洗菜、切菜、刷锅、炒菜这些步骤C .数学题真有趣D .物理与数学是密不可分的[解析] 算法是做一件事的步骤或程序,不是解决问题的办法,因而只有选项B 正确.6.对于一般的二元一次方程组⎩⎪⎨⎪⎧a 1x +b 1y =c 1a 2x +b 2y =c 2,在写解此方程组的算法时,需要注意的是( C )A .a 1≠0B .a 2≠0C .a 1b 2-a 2b 1≠0D .a 1b 1-a 2b 2≠0[解析] 采用加减法解方程组,未知数x ,y 的系数是a 1b 2-a 2b 1,故a 1b 2-a 2b 1≠0才能保证方程组有解.二、填空题7.写出1+3+5+7+9的算法的第一步是1+3得4,第二步是将第一步中的运算结果4与5相加得9,第三步是_将第二步中的运算结果9与7相加得16___.[解析] 注意体会这种累加法的本质,把这种累加的思想进行推广. 三、解答题8.有人针对如何检验哥德巴赫猜想“任何大于4的偶数都能写成两个奇质数之和”设计了如下的算法步骤:1.验证6可以写成两个奇质数之和. 2.验证8可以写成两个奇质数之和. 3.验证10可以写成两个奇质数之和. ……利用计算机无穷地进行下去就可以检验哥德巴赫猜想是否正确! 请指出该算法步骤中的错误.[解析] 该例给出的不是算法,因为算法的步骤应该是明确的、有限的;而本例中的“……”所表示的步骤不确定,并且要无穷地进行下去.9.设直线ax -y +3=0与圆(x -1)2+(y -2)2=4相交于A 、B 两点,且弦AB 的长为23,求a 的值,写出解决本题的一个算法.[解析] 1.求出圆心到直线的距离d =4-(232)2=1.2.根据点到直线的距离公式得|a -2+3|a 2+1=1.3.化简上面方程得|a +1|=a 2+1. 4.解方程得a =0.B 级 素养提升一、选择题 1.已知算法: 1.输入n ; 2.判断n 是否是2, 若n =2,则n 满足条件; 若n >2,则执行第3步;3.依次检验从2到n -1的整数能不能整除n ,若不能整除n ,满足条件.上述满足条件的数是( A )A .质数B .奇数C .偶数D .4的倍数[解析] 由质数定义知,满足条件的数是质数.2.早晨起床后需要:洗脸刷牙(5 min),刷水壶(2 min),烧水(8 min),泡面(3 min),吃饭(10 min),听广播(8 min),下列选项中最好的一种算法设计是( D )A .1.洗脸刷牙2.洗水壶3.烧水4.泡面5.吃饭6.听广播B .1.洗水壶2.烧水,同时洗脸刷牙3.泡面4.吃饭5.听广播C .1.吃饭,同时听广播2.泡面3.烧水, 同时洗脸刷牙4.洗水壶D .1.洗水壶2.烧水,同时洗脸刷牙3.泡面4.吃饭同时听广播[解析] 由算法的概念及特点知选D . 二、填空题3.阅读下面的算法,回答所给问题: 第一步,输入a ;第二步,若a ≥4,则执行第三步,否则执行第四步;第三步,输出2a -1; 第四步,输出a 2-2a -1.(1)上述算法的功能是 求分段函数f (a )=⎩⎪⎨⎪⎧2a -1(a ≥4),a 2-2a -1(a <4)的函数值 ;(2)当输入的a 值为_1___时,输出的数值最小,其最小值为_-2___. 4.一个算法步骤如下: 1 S 取值0,i 取值1.2 如果i ≤10,则执行3,否则执行6.3 计算S +i ,并让S 取计算结果的值.4 计算i +2,并让i 取计算结果的值.5 转去执行2.6 输出S .运行以上步骤输出的结果为S =_25___.[解析] 由以上算法可知:S =1+3+5+7+9=25. 三、解答题5.一个人带三只狼和三只羚羊过河,只有一条船,同船可以容一个人和两只动物,没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.(1)设计安全渡河的算法;(2)思考每一步算法所遵循的共同原则是什么? [解析] (1)1.人带两只狼过河; 2.人自己返回; 3.人带一只狼过河; 4.人自己返回; 5.人带两只羚羊过河; 6.人带两只狼返回; 7.人带一只羚羊过河; 8.人自己返回; 9.人带两只狼过河.(2)在人运送动物过河的过程中,人离开岸边时必须保证每个岸边的羚羊的数目大于狼的数目.6.试描述解下面方程组的算法:⎩⎪⎨⎪⎧x +y +z =12, ①3x -3y -z =16, ②x -y -z =-2. ③[解析] 设计如下:1.①+②化简得2x -y =14.④ 2.②-③化简得x -y =9.⑤ 3.④-⑤得x =5.⑥ 4.将⑥代入⑤得y =-4. 5.将x ,y 代入①得z =11. 6.输出x ,y ,z 的值.7.(1)试描述判断圆(x -a )2+(y -b )2=r 2和直线Ax +By +C =0位置关系的算法; (2)写出求过点M (-2,-1)、N (2,3)的直线与坐标轴围成三角形面积的一个算法. [解析] (1)1.输入圆心的坐标(a ,b ),直线方程的系数A 、B 、C 和半径r ; 2.计算z 1=Aa +Bb +C ; 3.计算z 2=A 2+B 2; 4.计算d =|z 1|z 2; 5.如果d >r ,则相离;如果d =r ,则相切;如果d <r ,则相交.(2)已知直线上的两点M 、N ,由两点式可写出直线方程,令x =0,得出与y 轴交点;令y =0,得出直线与x 轴交点,求出三角形两直角边的长,根据三角形面积公式可求出其面积.算法步骤如下:1.取x 1=-2,y 1=-1,x 2=2,y 2=3; 2.得直线方程y -y 1y 2-y 1=x -x 1x 2-x 1;3.令x =0,得y 的值m ,从而得直线与y 轴交点的坐标(0,m ); 4.令y =0,得x 的值n ,从而得直线与x 轴交点的坐标(n,0); 5.根据三角形面积公式求S =12·|m |·|n |;6.输出算法结果.由Ruize收集整理。
有效的,①③不起作用.故选C.
答案:C
5.阅读下面的算法:
第一步,输入两个实数a,b.
第二步:若a<b,则交换a,b的值,否则执行第三步.
第三步,输出a.
这个算法输出的是( )
A.a,b中的较大数
B.a,b中的较小数
C.原来的a的值
D.原来的b的值
解析:第二步中,若a<b,则交换a,b的值,那么a是a,b中的较大数;否则a<b不成立,即a≥b,那么a也是a,b中的较大数.故选A.
答案:A
二、填空题(每小题5分,共15分)
6.一个算法步骤如下:
第一步,S取0,i取1.
第二步,如果i≤10,则执行第三步;否则,执行第六步.
第三步,计算S+i并将结果代替S.
第四步,用i+2的值代替i.
第五步,执行第二步.
第六步,输出S.。