1、 章末复习与总结 创新拓展 名师点评 一、创新拓展画程序框图的秘诀程序框图是算法的一种表示形式,具有直观、形象、结构清晰和简单明了的特点,但熟练而准确地画出程序框图较为困难,而掌握“抓特征,明规则,依步骤”的画图九字诀,可以让你即刻拥有画程序框图的能力1抓特征组成一个程序框图的三要素是“四框”“一线”和“文字说明”,首先要抓住它们的特征与意义“四框”的特征与意义:(1)终端框(起止框)的特征是圆角矩形,表示算法的开始和结束,是任何程序框图不可缺少的(2)输入、输出框的特征是平行四边形,表示算法中输入和输出的信息,可放在任何需要输入、输出的位置(3)处理框(执行框)的特征是矩形,表示赋值和计算等
2、,算法中要处理的数据或计算可分别写在不同的处理框内(4)判断框的特征是菱形,用在当算法要求对两个不同的结果进行判断时“一线”的特征与意义:流程线的特征是带有方向箭头的线,用以连接程序框,直观地表示算法的流程“文字说明”的特征与意义:在框图内加以说明的文字、算式等,这也是每个框图不可缺少的内容2明规则画程序框图的规则是:(1)用标准,即使用标准的框图符号(2)按顺序,即框图一般按从上到下、从左到右的顺序画(3)看出入,即大多数程序框图的图形符号只有一个入口和一个出口,判断框是唯一具有超过一个出口的符号,条件结构中要在出口处标明“是”或“否”(4)明循环,即循环结构要注意变量的初始值及循环终止的条
3、件(5)辨流向,即流程线的箭头表示执行的方向,不可缺少(6)简说明,即在图形符号内的语言描述要简练、清晰3依步骤画程序框图的总体步骤是:第一步,设计算法,因为算法的设计是画程序框图的基础,所以在画程序框图前,应首先写出相应的算法步骤,并分析算法需要哪种基本逻辑结构(顺序结构、条件结构、循环结构);第二步,把算法步骤转化为对应的程序框图,转化过程中需要考虑很多细节,是一个将算法“细化”的过程【例 1】某商场进行优惠促销:若购物金额 x 在 500 元以上,打 8 折;若购物金额 x 在 300 元以上,打 9 折;否则,不打折设计算法的程序框图,要求输入购物金额 x 即能输出实际交款额 y.解
4、算法分析:由题意,实际交款额 y 与购物金额 x 之间的函数关系是 yx,0 x300,0.9x,300 x500,0.8x,x500,因为需对 x 进行两次判断,所以算法应含有两个条件结构,算法步骤如下:第一步,输入购物金额 x.第二步,判断 0 x300 是否成立若成立,则 yx,然后执行第四步;否则,执行第三步第三步,判断 x500 是否成立,若成立,则 y0.9x;否则,y0.8x.第四步,输出 y.画法步骤:(1)画顺序结构图,即画终端框及输入框,并用流程线连接(如图中);(2)画条件结构图,即画判断框并判断 0 x300 是否成立,若成立,则画处理框并填入“yx”,否则流向下一个判
5、断框(如图中);(3)再画条件结构图,即画判断框并判断 x500 是否成立,若成立,则画处理框并填入“y0.9x”,否则画处理框并填入“y0.8x”(如图中);(4)画一个总的输出框并填入“输出 y”,再画终端框表示算法结束(如图中)最后,合成整个算法程序框图,如图名师点评(1)凡是必须先根据条件作出判断,再决定进行哪一个步骤的问题,在画程序框图时,必须引入判断框,采用条件结构(2)画程序框图的关键是分析算法步骤,因为程序框图是算法步骤的图形表示,所以算法步骤越明确,画图就越容易【例 2】若 135n2 019,试设计算法的程序框图,寻找满足条件的最小奇数 n.解 算法分析:因为涉及累加问题,
6、所以算法中需含有循环结构,算法步骤如下:第一步,令 S0,n1.第二步,SSn,nn2.第三步,判断 S2 019 是否成立,若成立,则 nn2,输出 n;否则,返回第二步画法步骤:(1)画顺序结构图,即画终端框及两个处理框,并分别填入循环初始条件(如图中);(2)画循环结构图,先画循环体,即两个处理框(一个累加,一个计数),再画判断框,并判断 S2 019 是否成立,若成立,则画处理框,并填入“nn2”;否则,流向循环体进行再循环(如图中);(3)画输出框及终端框(如图中)最后,合成整个算法程序框图,如图名师点评 循环结构必包含顺序结构和条件结构,在累加、累乘等需要反复执行的算法设计中,宜使
7、用循环结构应用循环结构解决问题时,应特别注意两个变量累加(或累乘)变量和计数变量的初始值,另外,不要漏掉流程线的箭头及与判断框相连的流程线上的“是”或“否”二、方法技巧程序框图常见类型的求解策略程序框图是高考常考的知识点,主要考查四种问题:(1)求程序框图的运行结果;(2)填充程序框图缺少的内容;(3)由输出结果逆推输入数据;(4)以框图为背景的新定义题的求解1求运行结果在高考中出现的算法与程序框图的试题中,一些试题用简洁的语言给出了已知条件,并用算法与程序框图表明了由已知条件展开的数字叙述(推理)过程,仅仅隐去了由此得到的结论这一要素解决这类试题的关键是:读懂程序框图,并按照程序框图表示的算
8、法进行操作,揭示试题隐藏的结论【例 3】执行如图所示的程序框图,则输出的值为()A10 B17C19 D36解析 执行程序:k2,s0;s2,k3;s5,k5;s10,k9;s19,k17,此时不满足条件“k10?”,终止循环,输出结果为 s19.答案 C名师点评 对于含有循环结构的程序框图,求其输出值的关键是:读懂程序框图,并建立相应的数学模型在有关累加(或累乘)问题的循环结构中一般都有一个计数变量和一个累加(或累乘)变量,计数变量用于记录循环次数,而累加(或累乘)变量用于输出结果但在程序框图的输出中,有的是输出循环次数,有的是输出计算结果程序的输出结果受判断条件的制约,即根据判断条件确定是
9、否终止循环因此,在解题中要从三个方面,即计数变量、累加(或累乘)变量和判断条件进行分析【例 4】若某程序框图如图所示,当输入 50 时,则该程序运行后输出的结果是_解析 执行程序:S0,i1;S1,i2;S4,i3;S11,i4;S26,i5;S57,i6,此时 Sn,满足条件,终止循环,所以输出的结果为 6.答案 62补充框图在一些算法与程序框图的试题中,明确地给出了已知条件与欲达到的目标,但在程序框图中隐去了框图逻辑结构中的某一部分,如判断条件等解答这类试题的基本方法是:阅读程序框图,理解框图的基本逻辑结构,结合已知条件和目标,补全所缺内容【例 5】某程序框图如图所示,若输出的 S57,则
10、判断框内为()Ak4?Bk5?Ck6?Dk7?解析 第一次循环:k2,S224;第二次循环:k3,S8311;第三次循环:k4,S22426;第四次循环:k5,S52557,此时循环结束,故判断框中应填“k4?”答案 A名师点评 推断循环结构中的判断条件的关键是:什么时候循环结束,即根据循环体和输出结果确定判断条件【例 6】如图是求 x1,x2,x10 的乘积 S 的程序框图,图中空白框中应填入的内容为()ASS*(n1)BSS*xn1CSS*nDSS*xn解析 由题意可知,输出的是 10 个数的乘积,故空白框中应填 SS*xn.答案 D3由输出结果逆推输入数据【例 7】阅读如图所示的程序框图
11、,运行相应的程序如果输入某个正整数 n 后,输出的 S(10,20),那么 n 的值为()A3 B4C5 D6解析 本题框图中的循环结构为直到型循环结构,可以假设 n 值代入检验当 n1 时,S1;当 n2 时,S1213;当 n3 时,S1237;当 n4 时,S12715(10,20);当 n5 时,S121531.故 n4.答案 B4以程序框图为背景的新定义题【例 8】设 a 是一个各位数字都不是 0 且没有重复数字的三位数,将组成 a 的 3 个数字按从小到大排成的三位数记为 I(a),按从大到小排成的三位数记为 D(a)(例如 a815,则 I(a)158,D(a)851)阅读如图所
12、示的程序框图,运行相应的程序,任意输入一个 a,输出的结果 b_.解析 显然对于任意符合题意的 a,输出的 b 为定值,假设输入的 a 值为 123.当 a123 时,b321123198123;当 a198 时,b981189792198;当 a792 时,b972279693792;当 a693 时,b963369594693;当 a594 时,b954459495594;当 a495 时,b954459495a,终止循环,输出 b495.答案 4955程序框图与算法语句的相互转化程序框图和程序是描述算法的两种重要语言,它们各有优劣:程序框图具有直观、形象的特点,能使我们迅速而准确地认识某
13、一算法,但计算机无法“理解”它;程序虽然比较抽象,但可被计算机直接执行,熟练地将两者进行互化,是灵活描述某一算法的基础【例 9】请根据如图所示的程序框图写出相应的算法语句思路点拨 阅读程序框图可知,它的功能是求分段函数的值,根据 x 的不同取值,选择相应的解析式,因此应用条件语句又函数分为三段,因此需要用到条件语句的嵌套解 算法语句具体如下:【例 10】请根据如图所示的程序框图写出相应的算法语句思路点拨 阅读程序框图可知,它的功能是求 24 的所有正因数循环结构里面嵌套了条件结构,因此对应的算法语句是循环语句里面嵌套条件语句解 编写的算法语句如下:i1DO r24 MOD i IF r0 THEN PRINT i END IF ii1LOOP UNTIL i24END