搜索
    上传资料 赚现金
    知识讲解_算法与程序框图_提高练习题
    立即下载
    加入资料篮
    知识讲解_算法与程序框图_提高练习题01
    知识讲解_算法与程序框图_提高练习题02
    知识讲解_算法与程序框图_提高练习题03
    还剩10页未读, 继续阅读
    下载需要10学贝
    使用下载券免费下载
    加入资料篮
    立即下载

    知识讲解_算法与程序框图_提高练习题

    展开
    这是一份知识讲解_算法与程序框图_提高练习题,共13页。

    算法与程序框图

    【学习目标】

    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、程序框图的概念:

    程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.

    2、构成程序框的图形符号及其作用

    程序框

    名称

    功能

     

     

    起止框

    表示一个算法的起始和结束,是任何算法程序框图不可缺少的.

     

     

    输入、输出框

    表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置.

     

     

    处理框

    赋值、计算.算法中处理数据需要的算式、公式等,它们分别写在不同的用以处理数据的处理框内.

     

     

    判断框

    判断某一条件是否成立,成立时在出口处标明Y;不成立时在出口处则标明N.

    流程线

    算法进行的前进方向以及先后顺序

     

    连结点

    连接另一页或另一部分的框图

    3、程序框图的构成

    一个程序框图包括以下几部分:实现不同算法功能的相对应的程序框;带箭头的流程线;程序框内必要的说明文字.

    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.下列对算法的理解不正确的是(   

    A.算法有一个共同特点就是对一类问题都有效(而不是个别问题)

    B.算法要求一步步执行,且每一步都能得到唯一的结果

    C.算法一般是机械的,有时要进行大量重复的计算,它的优点是一种通法

    D.任何问题都可以用算法来解决

    【答案】D

    【解析】算法是解决问题的精确的描述,但是并不是所有问题都有算法.

    【总结升华】算法一般是机械的,有时需要进行大量的重复计算,只要按部就班去做,总能算出结果.通常把算法过程称为数学机械化,数学机械化的最大优点是它可以借助计算机来完成.实际上处理任何问题都需要算法,如:中国象棋有中国象棋的棋谱、走法、胜负的评判准则;而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;再比如申请出国有一系列的先后手续,购买物品也有相关的手续…….

     举一反三:

    【变式1】我们已学过的算法有求解一元二次方程的求根公式,加减消元法求二元一次方程组的解,二分法求出函数的零点等,对算法的描述有:对一类问题都有效;算法可执行的步骤必须是有限的;算法可以一步一步地进行,每一步都有确切的含义;是一种通法,只要按部就班地做,总能得到结果.以上算法的描述正确的有(    ).

        A1    B2    C3    D4

        【答案】D

    【变式2下列哪个不是算法的特征(     )

    A.抽象性        B.精确性    C.有穷性     D.唯一性

    【答案】D.

    类型二:算法的描述

    2.写出求解二元一次方程组的一个算法.

    【解析】 

    因为是二元一次方程组,所以a1a2不能同时为0

    第一步,假设a10(若a1=0,可将第一个方程与第二个方程互换),

    ,得到

    即方程组化为 

    第二步,若a1b2a2b10,解   

    第三步,将代入,整理得

    第四步,输出结果xy

    如果a1b2a2b1=0,从可以看出,方程组无解或有无穷多组解.

    【总结升华】一般化,得到求二元一次方程组的高斯消去算法步骤:

    第一步:计算

    第二步:若,则原方程组无解或有无穷多组解,否则(.

    第三步:输出计算的结果或者无法求解的信息.

     

    举一反三:

        【变式1】试描述求解三元一次方程组的算法步骤.

    【解析】

    算法1:第一步,+,得x=5   

        第二步,将分别代入式和式可得

        第三步,,得y=4   

        第四步,将代入可得  z=11

        第五步,得到方程组的解为

        算法2:第一步,+,得2xy=14   

        第二步,,得xy=9   

        第三步,,得x=5   

        第四步,将代入式,得y=4   

        第五步,将代入式,得z=11

        第六步,得到方程组的解为

    【高清课堂:算法与程序框图 397425 算法中的例2】

    【变式2】鸡兔同笼问题:一群小兔一群鸡,两群合到一群里,要数腿48,要数脑袋17,多少小兔多少鸡?

    【解析】算术算法:小兔的只数:;小鸡的只数:17-7=10.

    应用解二元一次方程组的方法来求解鸡兔同笼问题的步骤.

    第一步:设有小鸡x只,小兔y只,则有

    第二步:将方程组中的第一个方程两边乘-2加到第二个方程中去,得到,得到y=7

    第三步:将y=7代入(1)得x=10

    类型三:算法的设计

    例3、给出求1+2+3+4+5的一个算法.

    【解析】本题可以按照逐一相加的程序进行,也可以运用公式直接计算,还可以用循环方法求和.

    算法1

    第一步:计算1+2,得到3;

    第二步:将第一步中的运算结果3与3相加,得到6;

    第三步:将第二步中的运算结果6与4相加,得到10;

    第四步:将第三步中的运算结果10与5相加,得到15.

    算法2

    第一步:取=5;

    第二步:计算

    第三步:输出运算结果.

    算法3

    第一步:使

    第二步:使

    第三步:使

    第四步:使

    第五步:如果,则返回第三步,否则输出.

    【总结升华】一个问题的算法可能不唯一;

    若将本例改为给出求的一个算法,则上述算法2和算法3表达较为方便.

    举一反三:

    【变式1】写出求的一个算法.

    【答案】

    第一步:使,;

    第二步:使

    第三步:使

    第四步:使

    第五步:使

    第六步:如果,则返回第三步,否则输出.

    【变式2】求1×3×5×7×9×11的值,写出其算法.

    【答案】

    算法1:

    第一步,先求1×3,得到结果3;

    第二步,将第一步所得结果3再乘以5,得到结果15;

    第三步,再将15乘以7,得到结果105;

    第四步,再将105乘以9,得到945;

    第五步,再将945乘以11,得到10395,即是最后结果.

    算法2:

    用P表示被乘数,i表示乘数.

    第一步,使P=1;

    第二步,使i=3;

    第三步,使P=P×i;

    第四步,使i=i+2;

    第五步,若i11,则返回到第三步继续执行;否则算法结束.

    类型四:顺序结构的应用

    4.设计算法,求两底半径分别为14,且高为4的圆台的表面积及体积,并画出程序框图.

       【解析】 先求出斜高,再分别求出两个底面面积和侧面面积,则表面积与体积可得.

       【答案】  算法如下:

        第一步,令r1=1r2=4h=4

        第二步,计算斜高

        第三步,令

        第四步,计算圆台的表面积S=S1+S2+S3,圆台的体积

        第五步,输出SV

    该算法的程序框图如图所示.

    举一反三:

    【变式1】半径为r的圆,面积公式为S=πr2,当r=10时,写出计算圆面积的算法,画出程序框图.

    【解析】  算法如下:第一步:输入r=10

    第二步:计算S=πr2

    第三步:输出S

    程序框图如图所示.

    【总结升华】本题主要考查算法结构中的顺序结构.对套用公式型的问题,关键是明确所给公式中变量的个数及数值,以及输入、输出部分的设计.

    类型五:条件结构的应用

    5.已知函数,写出求该函数的函数值的算法,并画出程序框图.

    【解析】该函数是分段函数,因此当给出一个自变量x的值时,需先判断x的范围,然后确定利用哪一段的解析式求函数值.画程序框图时,必须采用条件分支结构,因为函数解析式分了三段,所以需要两个判断框,即进行两次判断.

    算法如下:

    第一步,输入x

        第二步,如果x0,那么使y=2x1,输出y;否则,执行第三步.

        第三步,如果0x1,那么使y=x2+1,输出y;否则,执行第四步.

    第四步,y=x2+2x

    第五步,输出y

    程序框图如下图所示.

           

    【总结升华】凡是必须先根据条件作出判断,然后再决定进行哪一个步骤的问题,在画程序框图时,必须引入判断框,采用条件结构.而像本题求分段函数的函数值的程序框图的画法,如果是分两段的函数,只需引入一个判断框;如果是分三段的函数,需引入两个判断框;分四段的函数需引入三个判断框,依此类推.判断框内的内容是没有固定顺序的.

    举一反三:

    【变式1】已知函数  写出求函数的任一函数值的一个算法并画出程序框图.

    【解析】记y=f (x)

    算法:

    第一步:输入x

    第二步:如果x0,那么使y=1;如果x=0,那么使y=0;如果x0,那么使y=1

    第三步:输出函数值y

    程序框图如下图所示.

              

    【高清课堂:算法与程序框图 397425 程序框图中的例2】

    【变式2】设计算法判断一元二次方程是否有实数根,并画出相应程序框图.

    【解析】算法步骤如下:

    第一步:输入一元二次方程的系数:abc

    第二步:计算Δ的值;

    第三步:判断Δ0是否成立.若Δ0成立,输出方程有实根;否则输出方程无实根.结束算法.相应的程序框图如图.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    类型六:循环结构的应用

    6.给出20个数,1,3,7,13,其规律是:第一个数是1,第二个数比第一个数大2,第三个数比第二个数大4,依此类推,试设计出求这20个数的和的算法,并画出程序框图.

    【解析】算法如下:

        S1S=1i=1

        S2:若i20?,则执行S5,否则执行S4

        S3S=S+2ii=i+1

        S4:返回S3

        S5:输出S

    S6:结束.

    程序框图如下图所示:

    举一反三:

    【变式12016春 辽宁锦州期末)用循环语句描述计算1+22+32++a2100的最小自然数n的值的一个算法,画出算法程序框图,并写出相应的程序.

    【解析】算法如下:

    第一步,S=0

    第二步,n=1

    第三步S=S+n2

    第四步如果S100使n=n+1并返回第三步否则输出n1

        相应的程序框图如图所示:

           

    相应的程序如下:

    S=0

    n=1

    WHILE S<=100

      S=S+n^2

      n=n+1

    WEND

    PRINT n-1

    END

    类型七三种结构的综合应用

    7.以下是某次考试中某班15名同学的数学成绩:729158638488905561736477829460.要求将80分以上的同学的平均分求出来并画出程序框图.

      【解析】用条件分支结构来判断成绩是否高于80分,用循环结构控制输入的次数,同时引进两个累加变量,分别计算高于80分的成绩的总和和人数.

        程序框图如图所示.

           

    【总结升华】 对于此类要求把所给的多个数据逐一检验是否满足条件的问题,可采用条件结构和循环结构相结合的算法.

    举一反三:

    【变式1】已知函数图表示的是给定x的值,求其对应的函数值y的程序框图,处应填写__________处应填写__________

    【答案】

    【解析】分段函数x的范围对应程序框图中的判断条件,填;解析式对应赋值框的内容,填

     

    【变式2】先看一个小材料:1+2+3++  )>10000,这个问题的答案不唯一,只要确定出满足条件的最小正整数n0,括号内填写的数字只要大于或等于n0即可.

        写出寻找满足条件的最小正整数n0的算法,并画出相应的程序框图.

    【解析】算法:第一步:取n的值等于1

    第二步:计算

    第三步:如果S的值大于10000,那么n即为所求;否则,让n的值增加1,然后转到第二步重复操作.

    根据以上的操作步骤,画出程序框图如下图所示.

     

     

     

     

     

     

     

     

     

     

    类型八:利用算法和程序框图解决实际问题

    8.北京获得了2008年第29届奥运会主办权.你知道在申办奥运会的最后阶段,国际奥委会是如何通过投票决定主办权归属的吗?

        对选出的5个申办城市进行表决的操作程序是:首先进行第一轮投票,如果有一个城市得票超过总票数的一半,那么该城市就获得主办权;如果所有申办城市得票数都不超过总票数的一半,则将得票最少的城市淘汰,然后重复上述过程,直到选出一个申办城市为止.试画出该过程的程序框图.

        【解析】本题为算法中与现实生活相联系的题目,从选举的方法看,应选择循环结构来描述算法.

        如图所示:

           

    【总结升华】 解决与现实相关的问题时首先要理清题意,此循环结构中对用哪一个步骤控制循环,哪一个步骤作为循环体,要有清晰的思路.

    举一反三:

    【变式1有甲乙丙丁4个人过一座简易木桥,这四个人过桥分别所用的时间是2分钟,4分钟,6分钟,8分钟,由于木桥质量原因,桥上最多只能有两个人。请你设计一个算法,使这4个人在最快的时间过桥,写清步骤,最后算出所需时间

    【答案】10

    【解析】方法不唯一

    算法步骤如下:

    第一步,甲乙先上桥;

    第二步,2分钟后甲过了桥同时丁上桥;

    第三步,再过2分钟后乙过了桥同时丙上桥;

    第四步,6分后丙丁同时上岸.

    所需时间是2+2+6=10(分钟).

     

    相关试卷

    知识讲解_随机抽样_提高练习题: 这是一份知识讲解_随机抽样_提高练习题,共10页。

    知识讲解_算法与程序框图_基础练习题: 这是一份知识讲解_算法与程序框图_基础练习题,共11页。

    知识讲解_平面_提高练习题: 这是一份知识讲解_平面_提高练习题,共8页。

    免费资料下载额度不足,请先充值

    每充值一元即可获得5份免费资料下载额度

    今日免费资料下载份数已用完,请明天再来。

    充值学贝或者加入云校通,全网资料任意下。

    提示

    您所在的“深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载 10 份资料 (今日还可下载 0 份),请取消部分资料后重试或选择从个人账户扣费下载。

    您所在的“深深圳市第一中学”云校通为试用账号,试用账号每位老师每日最多可下载10份资料,您的当日额度已用完,请明天再来,或选择从个人账户扣费下载。

    您所在的“深圳市第一中学”云校通余额已不足,请提醒校管理员续费或选择从个人账户扣费下载。

    重新选择
    明天再来
    个人账户下载
    下载确认
    您当前为教习网VIP用户,下载已享8.5折优惠
    您当前为云校通用户,下载免费
    下载需要:
    本次下载:免费
    账户余额:0 学贝
    首次下载后60天内可免费重复下载
    立即下载
    即将下载:0份资料
    • 充值学贝下载 90%的用户选择 本单免费
    • 扫码直接下载
    选择教习网的 4 个理由
    • 更专业

      地区版本全覆盖, 同步最新教材, 公开课⾸选;1200+名校合作, 5600+⼀线名师供稿

    • 更丰富

      涵盖课件/教案/试卷/素材等各种教学资源;500万+优选资源 ⽇更新5000+

    • 更便捷

      课件/教案/试卷配套, 打包下载;手机/电脑随时随地浏览;⽆⽔印, 下载即可⽤

    • 真低价

      超⾼性价⽐, 让优质资源普惠更多师⽣

    开票申请 联系客服
    本次下载需要:0学贝 0学贝 账户剩余:0学贝
    本次下载需要:0学贝 原价:0学贝 账户剩余:0学贝
    了解VIP特权
    您当前为VIP用户,已享全站下载85折优惠,充值学贝可获10%赠送

        扫码支付后直接下载

        0元

        扫码支付后直接下载

        使用学贝下载资料比扫码直接下载优惠50%
        充值学贝下载,本次下载免费
        了解VIP特权
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付(支持花呗)

        到账0学贝
        • 微信
        • 支付宝

        微信扫码支付

        支付宝扫码支付 (支持花呗)

          下载成功

          Ctrl + Shift + J 查看文件保存位置

          若下载不成功,可重新下载,或查看 资料下载帮助

          本资源来自成套资源

          更多精品资料

          正在打包资料,请稍候…

          预计需要约10秒钟,请勿关闭页面

          服务器繁忙,打包失败

          请联系右侧的在线客服解决

          单次下载文件已超2GB,请分批下载

          请单份下载或分批下载

          支付后60天内可免费重复下载

          我知道了
          正在提交订单

          欢迎来到教习网

          • 900万优选资源,让备课更轻松
          • 600万优选试题,支持自由组卷
          • 高质量可编辑,日均更新2000+
          • 百万教师选择,专业更值得信赖
          微信扫码注册
          qrcode
          二维码已过期
          刷新

          微信扫码,快速注册

          还可免费领教师专享福利「樊登读书VIP」

          手机号注册
          手机号码

          手机号格式错误

          手机验证码 获取验证码

          手机验证码已经成功发送,5分钟内有效

          设置密码

          6-20个字符,数字、字母或符号

          注册即视为同意教习网「注册协议」「隐私条款」
          QQ注册
          手机号注册
          微信注册

          注册成功

          下载确认

          下载需要:0 张下载券

          账户可用:0 张下载券

          立即下载

          如何免费获得下载券?

          加入教习网教师福利群,群内会不定期免费赠送下载券及各种教学资源, 立即入群

          即将下载

          知识讲解_算法与程序框图_提高练习题

          该资料来自成套资源,打包下载更省心

          [共10份]
          浏览全套
            立即下载(共1份)
            返回
            顶部