第十章算法初步、复数与选考内容第1讲程序框图及简单的算法案例1.了解算法的含义,了解算法的思想.2.理解程序框图的三种基本逻辑结构:顺序、条件、循环.3.理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义.4.了解程序框图及了解工艺流程图.5.能绘制简单实际问题的流程图,了解流程图在解决实际问题中的作用.6.了解结构图.7.会运用结构图梳理已学过的知识,整理收集到的资料信息.1.算法的概念算法通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.2.程序框图程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.通常程序框图由程序框和流程线组成,一个或几个程序框的组合表示算法中的一个步骤;流程线为带方向的箭头,按照算法进行的顺序将程序框连接起来.3.算法的三种基本逻辑结构(1)顺序结构:由若干个依次执行的处理步骤组成的,这是任何一个算法都离不开的基本结构.其结构形式为:(2)条件结构:指算法的流程根据给定的条件是否成立而选择执行不同的流向的结构形式.其结构形式为:(3)循环结构:指从某处开始,按照一定条件反复执行处理某一步骤的情况.反复执行的处理步骤称为循环体.循环结构又分为当型(WHILE型)和_________________.其结构形式为:直到型(UNTIL型)语句一般格式功能输入语句INPUT“提示内容”;变量输入信息输出语句PRINT“提示内容”;表达式输出常量、变量的值和系统信息赋值语句变量=表达式将表达式代表的值赋给变量4.输入语句、输出语句、赋值语句的格式与功能5.条件语句(1)程序框图中的条件结构与条件语句相对应.(2)条件语句的格式及框图:①IF—THEN格式②IF—THEN—ELSE格式6.循环语句循环结构(1)程序框图中的__________与循环语句相对应.(2)循环语句的格式及框图:①UNTIL语句②WHILE语句7.辗转相除法辗转相除法是用于求最大公约数的一种方法,其基本过程是:对于给定的两个数,用较大的数除以较小的数,若余数不为零,则将较小的数和余数构成新的一对数,继续上面的除法,直到大数被小数除尽,则这时的除数就是原来两个数的最大公约数.8.更相减损术更相减损术是一种求两数最大公约数的方法,其基本过程是:对于给定的两数,判断它们是否都是偶数,若是,则用2约简;若不是,则以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的减数与差相等为止,则这个等数或其与约简的数的乘积就是所求的最大公约数.9.秦九韶算法秦九韶算法是一种用于计算一元n次多项式的值的方法.10.进位制人们为了计数和运算方便而约定的记数系统,“满k进1”,就是k进制,k进制的基数是k.1.(2013年湖南)执行如图10-1-1所示的程序框图,如果输入a=1,b=2,那么输出a的值为________.图10-1-1解析:根据题意,该算法的功能为第一步:a=1+2=3;第二步:a=3+2=5;第三步:a=5+2=7;第四步:a=7+2=98,输出9.答案:92.(2013年陕西)根据下列算法语句(如图10-1-2),当输入x的值为60时,输出y的值为()图10-1-2A.25B.30C.31D.61答案:C解析:根据题意,该算法的功能为y=12x,x≤50,35x-50+25,x50,当x=60时,y=35(60-50)+25=31.3.(2013年山东)执行程序框图(如图10-1-3),若第一次输入的a的值为-1.2,第二次输入的a的值为1.2,则第一次、第二次输出的a的值分别为()图10-1-3A.0.2,0.2B.0.2,0.8C.0.8,0.2D.0.8,0.8解析:当a=-1.2时,a→-0.2→0.8,此时输出0.8;当a=1.2时,a→0.2,此时输出0.2.故选C.答案:C4.(2014年江苏)如图10-1-4所示的是一个算法流程图,则输出n的值是____________.图10-1-4解析:本题实质上就是求不等式2n20的最小整数解.2n20的整数解为n≥5,因此输出n=5.答案:5考点1程序框图例1:(1)(2013年广东)执行如图10-1-5所示的程序框图,若输入n的值为4,则输出s的值为________.图10-1-5解析:根据题意,该算法的功能为第一步:i=1,s=1+(1-1)=1,i=2;第二步:i=2,s=1+(2-1)=2,i=3;第三步:i=3,s=2+(3-1)=4,i=4;第四步:i=4,s=4+(4-1)=7,i=5.54,此时退出程序,输出s=7.答案:7(2)(2013年辽宁)执行如图10-1-6所示的程序框图,若输入n=8,则输出S=()图10-1-6A.49B.67C.89D.1011答案:A解析:根据题意,该算法的功能为S=122-1+142-1+162-1+182-1=11×3+13×5+15×7+17×9=121-13+13-15+15-17+17-19=49.【规律方法】了解算法的功能一般不是很难,难就难在什么时候结束,出错的原因要么多运行了一次,要么少运行了一次.如果数字较小就比较好办,把每一步都写出来即可,当数字较大时,一定要在你估计结束的前面开始试着运行,如本题i≤8,i=10时结束,提前运算当i=6时,s=122-1+142-1+162-1,i=6+2=8;当i=8时,8≤8,s=122-1+142-1+162-1+182-1,i=8+2=10;当i=10时,10≤8,否,结束运行,然后计算则比较简单.【互动探究】1.(2015年广东深圳一模)执行如图10-1-7所示的程序框图,则输出S的值为()A.16B.25C.36D.49图10-1-7解析:S=0,i=1,n=1;S=1,i=2,n=3;S=4,i=3,n=5;S=9,i=4,n=7;S=16,i=5,n=9;S=25,i=6,n=11,S=36,终止循环.故选C.答案:C考点2算法终止条件的判断例2:(2013年江西)阅读如图10-1-8所示的程序框图,如)果输出i=4,那么空白的判断框中应填入的条件是(图10-1-8A.S8C.S10B.S9D.S11解析:根据题意,该算法的功能为第一步:i=2,S=2×2+1=5;第二步:i=3,S=2×3+2=8;第三步:i=4,S=2×4+1=9.此时退出程序,则空白的判断框中应填入“S9?”.答案:B【规律方法】在循环结构中,要注意把“当型”与“直到型”区分开来,在解答含循环结构的程序框图时,可以自己运行循环刚开始的几次,找出循环的规律,再运行最后一次,确定循环的“终点”,就可以把握循环的全过程.算法终止条件的判断比直接计算算法的结果要难一些,减少失误的关键还是要避免多运行或少运行,其策略同例1.若该程序运行后输出S的值是,则(【互动探究】2.(2013年浙江)某程序框图如图10-1-9,95)A.a=4B.a=5C.a=6D.a=7图10-1-9答案:A解析:根据题意,该算法的功能为S=1+11×2+12×3+13×4+14×5=1+1-12+12-13+13-14+14-15=95.即k=4时程序应继续,而k4时程序应退出.故a=4.3.(2013年重庆)执行如图10-1-10所示的程序框图,如果)输出s=3,那么判断框内应填入的条件是(A.k≤6B.k≤7C.k≤8D.k≤9图10-1-10解析:根据题意,该算法的功能为s=1×log23×log34×…×logk(k+1)=log2(k+1)=3.k=7→k+1=8,此时才退出程序.故选B.答案:B考点3算法与数列知识的整合例3:(2013年课标Ⅱ)执行程序框图(如图10111),如果输入N=4,那么输出S=()A.1+12+13+14B.1+12+12×3+12×3×4C.1+12+13+14+15D.1+12+12×3+12×3×4+12×3×4×5图10111答案:B解析:根据题意,该算法的功能为第一步:S=0+1=1,k=2;第二步:T=12,S=1+12,k=3;第三步:T=12×3,S=1+12+12×3,k=4;第四步:T=12×3×4,S=1+12+12×3+12×3×4,此时k=54,输出S.【互动探究】4.(2014年湖北)阅读如图10-1-12所示的程序框图,运行相应的程序,若输入n的值为9,则输出S的值为________.图10-1-12解析:依题意,得该程序框图是计算S=21+22+…+29+1+2+…+9=1067,故输出S=1067.答案:1067考点4算法与函数知识的整合例4:(2014年湖南)执行如图10-1-13所示的程序框图,如果输入t∈[-2,2],则输出S∈()A.[-6,-2]B.[-5,-1]C.[-4,5]D.[-3,6]图10-1-13解析:当t∈[-2,0)时,运行程序t=2t2+1∈(1,9],S=t-3∈(-2,6];当t∈[0,2]时,S=t-3∈[-3,-1],则S∈(-2,6]∪[-3,-1]=[-3,6].答案:D【互动探究】5.(2013年新课标Ⅰ)运行下列程序框图(如图10-1-14),如果输入的t∈[-1,3],则输出s∈()图10-1-14A.[-3,4]C.[-4,3]B.[-5,2]D.[-2,5]答案:A解析:根据题意,该算法的功能为s=3t,t1,-t2+4t,t≥1.当t∈[-1,1)时,s=3t∈[-3,3);当t∈[1,3]时,s=-t2+4t=-(t-2)2+4∈[3,4].故s∈[-3,4].●思想与方法●⊙数列中的算法思想例题:(2012年广东佛山二模)执行如图10-1-15所示的算法程序,记输出的一列数依次为a1,a2,…,an,n∈N*,n≤2011(注:框图中的赋值符号“=”也可以写成“←”或“:=”).图10-1-15(1)若输入λ=2,直接写出输出结果;(2)若输入λ=2,令bn=1an-1,证明:{bn}是等差数列,并写出数列{an}的通项公式;解:(1)输出结果为0,22.(2)当λ=2时,bn+1-bn=1an+1-1-1an-1=112-an-1-1an-1=2-anan-1-1an-1=-1(常数),n∈N*,n≤2010.所以{bn}是首项b1=-1,公差d=-1的等差数列.故bn=-n,1an-1=-n.故数列{an}的通项公式为an=1-1n,n∈N*,n≤2011.