《9-1算法与程序框图》由会员分享,可在线阅读,更多相关《9-1算法与程序框图(25页珍藏版)》请在金锄头文库上搜索。
1、(了解算法的含义、了解算法的思想/理解程序框图的三种基本逻辑结构:顺序、条件、循环)9.1 算法与程序框图1.算法的概念算法可以理解为由基本运算及规定的运算顺序所构成的完整解题步骤,或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题.算法的五个特征分别是:概括性、逻辑性、有穷性、不唯一性、普遍性.2.程序框图通常用一些通用图形符号构成一张图来表示算法,这种图称做程序框图.3顺序结构是最简单的算法结构,语句与语句之间,框与框之间按从上到下的顺序进行.其结结构形式为为4条件分支结构:依据指定条件 执行不同指令的控制结构.其结构形式为选择5循环结环结 构循环结构根据指
2、定条件决定是否 执行一条或多条指令的控制结构.其结结构形式为为重复1任何一个算法都必须须有的基本结结构是( ) A顺顺序结结构 B条件结结构 C循环结环结 构 D三个都有答案:A2a表示“处处理框”,b表示“输输入、输输出框”,c表示“起、止框”,d表示“判断框”,以下四个图图形依次为为( )Aabcd Bdcab Cbacd Dcbad答案:D3如图图所示给给出的四个流程图图,其中满满足while语语句结结构的有( )A4个 B3个C2个 D1个解析:其中(2)(3)(4)是“当”型的循环结构答案:B4一个算法的程序框图图如图图所示,如果输输入的x值值是20,则输则输 出的结结果是_答案:2
3、0 顺顺序结结构是由若干个依次执执行的处处理步骤组骤组 成的,这这是任何一个算法都离不开的基本结结构顺顺序结结构在程序框图图中的体现现就是用流程线线将程序框自上而下地连连接起来,按顺顺序执执行算法步骤骤利用顺顺序结结构可解决简单简单 的已知公式求值问题值问题 【例1】 已知点P(x0,y0)和直线线l:AxByC0,求点P(x0,y0)到直线线l的距离d,写出其算法并画出程序框图图思维点拨:利用点到直线的距离公式可写出算法,而程序框图利用顺序结构比较简单解答:算法如下:第一步,输入x0,y0及直线方程的系数A,B,C.第二步:计算Z1Ax0By0C.第三步:计算Z2A2B2.第四步,计算d .
4、第五步,输出d.程序框图(如右图):变式1.阅读读下边边的流程图图,若输输入的a,b,c分别为别为 21,32,75,则输则输 出的a,b,c分别别是( )A75,21,32 B21,32,75 C32,21,75 D75,32,21解析:由流程图知输入a21,b32,c75,x21,a75,c32,b21,输出a75,b21,c32.答案:A1. 利用条件分支结结构解决算法问题时问题时 ,要引入判断框,要根据题题目的要求引入一个或多个判断框而判断框内的条件不同,对应对应 的下一图图框中的内容和操作要相应应地进进行变变化,故要逐个分析判断框内的条件2 解决分段函数的求值问题值问题 及比较较大小
5、等问题问题 ,一般采用条件结结构【例2】 函数y ,写出求该该函数值值的算法及程序框图图解答:算法如下:第一步:输输入x.第二步:如果x0,则则y2;如果x0,则则y0;如果x0,则则y2.第三步:输输出函数值值y.相应应的程序框图图如下图图:变式2.给出一个算法的程序框图图如图图所示:该该程序框图图的功能是( )A求出a,b,c三个数中的最大值值 B求出a,b,c三个数中的最小值值C将a,b,c按从小到大排列 D将a,b,c按从大到小排列解析:此程序可解决求三个数的最小值,也可利用教材中排序程序解决若干数最大值和最小值问题答案:B【例3】 画出计计算122232429921002的值值的程序
6、框图图解答:程序框图图如下图图:对于数列求和、判断一个正整数是否为积数,用二分法求函数的零点等问题可利用循环结构去解决.变式3.画出求 的值值的程序框图图解答:解法一:当型循环环程序框图图: 解法二:直到型循环环程序框图图:【方法规律】1在画程序框图时首先要进行结构的选择,套用格式,若求只含有一个关系式的函数的函数值时,只用顺序结构就能够解决;若是分段函数或执行时需要先判断才能执行后继步骤的,就必须引入条件结构;如果问题里涉及的运算进行了许多重复的步骤,且数之间有相同的规律,就可引入变量,应用循环结构,当然应用循环结构里边一定要用到顺序结构与条件结构.比如计算123100,12221002,1
7、3599等类型题目,都应用循环结构设计算法,绘制算法程序框图2在具体绘制程序框图时,要注意以下几点:(1)流程线上要有标志执行顺序的箭头(2)判断框后边的流程线应根据情况标注“是”或“否”(3)框图内的内容包括累加(积)变量初始值,计数变量初始值,累加值,前后两个变量的差值都要仔细斟酌,不能有丝毫差错(4)分支条件结构或判断框内内容的填写,有时大于等于,有时大于,有时小于,有时还是小于等于,它们的含义是各不相同的,要根据所选循环结构的类型,正确地进行选择. (2009浙江)某程序框图图如图图所示,该该程序运行后输输出的k的值值是( )A4 B5 C6 D7【答题模板】解析:根据程序框图中的SS
8、2S可知,本题表示的算法是求和运算,其中满足的约束条件是S100,由此输出项数k的值当k0,S0,S100,S0201;k1,S100,S1213;k2,S100,S32311;k3,S100,S112112 059;k4,S100,输出k4.答案:A 【分析点评】1. 本题所求的结果是求满足某一不等式的最大正整数问题,与2008年山东卷13题类似2. 在本题的解答过程中,第一个可能出现的错误是将原流程图看做形如等比数列1,2,4,2k的求和运算,其实在每一步循环中,新增数据是2S,而不是2k;第二个可能出现的错误是输出结果,本题中满足条件S100的k的最大值是2,当k3时,其和S100,但因它的顺序结构中,又进行了kk1的运算,所以输出的k是4.3本题如将处理框SS2S改为SS2k,则表示求“使S1242k100”的最大正整数的问题了4算法初步在高考中的基本考点就是程序框图,特别是带有循环结构的程序框图,解决这类问题要注意如下两点:(1)分析清楚具体计算的步骤,即先设计出算法,如本题,采用逐个相加的方法,计数变量k就应该限制在不大于30上,根据数列的构成规律确定累加变量的赋值方法;(2)注意各个框和流程线的实际意义,如本题,判断框的出口是“否”,说明不满足判断框中的条件时退出循环. 点击此处进入 作业手册