1、章末分层突破自我校对顺序结构 条件分支结构 循环结构条件语句 循环语句 秦九韶算法_算法的设计1.算法设计与一般意义上的解决问题不同,它是对一类问题的一般解法的抽象与概括,它往往是把问题的解法划分为若干个可执行的步骤,有时是重复多次,但最终都必须在有限个步骤之内完成.2.对于给定的问题,设计其算法时应注意以下五点:(1)与解决问题的一般方法相联系,从中提炼与概括步骤;(2)将解决问题的过程划分为若干步骤;(3)引入有关的参数或变量对算法步骤加以表述;(4)用简练的语言将各个步骤表达出来;(5)算法的执行要在有限步内完成.已知平面直角坐标系中两点A(1,0),B(3,2),写出求线段AB的垂直平
2、分线方程的一个算法.【精彩点拨】根据求线段的垂直平分线的步骤,先求线段的中点坐标,然后根据线段所在直线的斜率求出垂直平分线的斜率,可求垂直平分线的方程.【规范解答】S1计算x01,y01,得AB的中点N(1,1).S2计算k1,得AB斜率.S3计算k2,得AB垂直平分线的斜率.S4由点斜式得直线AB的垂直平分线的方程,并输出.再练一题1.已知函数y2x48x224x30,写出连续输入自变量的11个取值,分别输出相应的函数值的算法.【解】算法为:S1输入自变量x的值;S2计算y2x48x224x30;S3输出y;S4记录输入次数;S5判断输入的次数是否大于11.若是,则结束算法;否则,返回S1.
3、程序的编写算法设计和程序框图是设计程序的基础.编写程序的基本方法是“自上而下逐步求精”,步骤如下:(1)把一个复杂的大问题分解成若干相对独立的小问题.若小问题仍较复杂,则可以把小问题分解成若干个子问题.这样不断地分解,使小问题或子问题简单到能直接用程序的三种基本结构甚至是五种基本语句表达清楚为止.(2)对应每一个小问题或子问题编写出一个功能上相对独立的程序块来.(3)把每一个模块统一组装,完成程序.某人从家到单位共需要40分钟,在途中前20分钟以60米/分钟的速度跑步前进,后20分钟以25米/分钟的速度步行,请设计算法计算此人离家t分钟时的路程S,写出程序.【规范解答】由题意可知,路程S与时间
4、t分钟存在如下关系:S根据关系式可写出算法程序如下:再练一题2.到银行办理个人异地汇款(不超过100万)时,银行要收取一定的手续费,汇款额不超过100元,收取1元手续费;超过100元但不超过5 000元,按汇款额的1%收取;超过5 000元,一律收取50元手续费.试用条件语句描述汇款额为x元时,银行收取手续费为y元的过程,写出程序.【解】依题意,我们可求手续费y与汇款额x之间的关系式为y程序如下:程序框图的设计与应用从近几年高考各省市试题中可以看出,本部分命题呈现以下特点:(1)考题以选择题、填空题为主,属中低档题.(2)考查内容是程序框图,或者要求补充完整框图,或者要求求出按程序框图执行后的
5、结果.程序框图中主要以条件结构和循环结构为主,其中循环结构是重点.(2015重庆高考)执行如图11所示的程序框图,若输出k的值为8,则判断框内可填入的条件是()图11A.sB.sC.s D.s【规范解答】由程序框图,k的值依次为0,2,4,6,8,因此S(此时k6),还必须计算一次,因此可填s,选C.【答案】C再练一题3.(2016北京高考)执行如图12所示的程序框图,若输入的a值为1,则输出的k值为()图12A.1B.2C.3D.4【解析】开始a1,b1,k0;第一次循环a,k1;第二次循环a2,k2;第三次循环a1,条件判断为“是”,跳出循环,此时k2.【答案】B分类讨论的思想在解答某些数
6、学问题时,有时会有多种情况,需对各种情况加以分类,并逐类求解,然后综合得结论,这就是分类讨论思想.在具体问题的算法设计中,往往需要根据条件进行逻辑判断,并进行不同的处理(如条件分支结构和循环结构),这实际上运用了分类讨论的数学思想方法.写出解方程pxq0(其中p,q为常数)的一个算法,并画出相应的程序框图.【精彩点拨】方程pxq0的根与p,q的取值关系密切.当p0时,方程的解为x;当p0且q0时,方程无实数根;而当p0,q0时,方程的解为全体实数.因此对p,q的取值进行讨论,由此可知在算法中应不止一次地应用判断框引入条件结构.【规范解答】算法如下:S1输入p,q.S2如果p0,则x,并执行S3
7、;否则执行S4.S3输出x,结束算法.S4如果q0,则输出“方程无实数根”;否则输出“方程的解是全体实数”.程序框图如图.再练一题4.已知函数f(x)画出求f(f(x)的程序框图.【解】程序框图如图所示:1.(2015全国卷)执行如图13的程序框图,如果输入的t0.01,则输出的n()图13A.5B.6C.7D.8【解析】运行第一次:S10.5,m0.25,n1,S0.01;运行第二次:S0.50.250.25,m0.125,n2,S0.01;运行第三次:S0.250.1250.125,m0.062 5,n3,S0.01;运行第四次:S0.1250.062 50.062 5,m0.031 25
8、,n4,S0.01;运行第五次:S0.031 25,m0.015 625,n5,S0.01;运行第六次:S0.015 625,m0.007 812 5,n6,S0.01;运行第七次:S0.007 812 5,m0.003 906 25,n7,S16,退出循环,输出n4.故选B.【答案】B3.(2016四川高考)秦九韶是我国南宋时期的数学家,普州(现四川省安岳县)人,他在所著的数书九章中提出的多项式求值的秦九韶算法,至今仍是比较先进的算法.如图15所示的程序框图给出了利用秦九韶算法求某多项式值的一个实例.若输入n,x的值分别为3,2,则输出v的值为()图15A.9 B.18 C.20 D.35【
9、解析】由程序框图知,初始值:n3,x2,v1,i2,第一次执行:v4,i1;第二次执行:v9,i0;第三次执行:v18,i1.结束循环,输出当前v的值18.故选B.【答案】B4.(2016天津高考)阅读下边的程序框图,运行相应的程序,则输出S的值为()图16A.2 B.4 C.6 D.8【解析】S4不满足S6,S2S248,n112;n2不满足n3,S8满足S6,则S862,n213;n3不满足n3,S2不满足S6,则S2S224,n314;n4满足n3,输出S4.故选B.【答案】B5.(2015北京高考)执行如图17所示的程序框图,输出的结果为()图17A.(2,2) B.(4,0)C.(4
10、,4) D.(0,8)【解析】x1,y1,k0,sxy0,txy2,xs0,yt2,k1,不满足k3;sxy2,txy2,x2,y2,k2不满足k3;sxy4,txy0,x4,y0,k3,满足k3,输出的结果为(4,0).【答案】B6.(2014全国卷)执行如图18所示的程序框图,如果输入的x,t均为2,则输出的S()图18A.4 B.5 C.6 D.7【解析】x2,t2,M1,S3,k1.kt,M22,S235,k2;kt,M22,S257,k3;32,不满足条件,输出S7.【答案】D7.(2014重庆高考)执行如图19所示的程序框图,则输出s的值为()图19A.10 B.17 C.19 D
11、.36【解析】开始s0,k2;第一次循环s2,k3;第二次循环s5,k5;第三次循环s10,k9;第四次循环s19,k17,不满足条件,退出循环,输出s19,故选C.【答案】C8.(2016全国卷)执行下面的程序框图,如果输入的x0,y1,n1,则输出x,y的值满足()图110A.y2x B.y3xC.y4x D.y5x【解析】输入x0,y1,n1,运行第一次,x0,y1,不满足x2y236;运行第二次,x,y2,不满足x2y236;运行第三次,x,y6,满足x2y236,输出x,y6.由于点在直线y4x上,故选C.【答案】C9.(2014辽宁高考)执行如图111的程序框图,若输入n3,则输出T_.图111【解析】初始值:i0,S0,T0,n3,i1,S1,T1;i2,S3;T4;i3,S6,T10;i4,S10,T20,由于此时43不成立,停止循环,输出T20.【答案】20