1、一学习目标1了解算法的含义,了解算法的思想;理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构2理解几种基本算法语句输入语句、输出语句、赋值语句、条件语句、循环语句的含义3初步了解几个典型的算法案例二知识要点1算法通常是指可以用计算机来解决某一类问题的程序或步骤,必须是明确和有序的,而且能够在有限步之内完成2程序框图又称流程图,是一种用规定的图形 、指向线及文字说明来准确、直观地表示算法的图形通常程序框图由程序框和流程线组成,一个或几个程序框的组合表示算法中的一个步骤,流程线带方向箭头,按照算法进行的顺序将程序框连接起来3三种基本逻辑结构(1)顺序结构是由若干个依次执行的处理步骤组成
2、的,其结构形式为:(2)条件结构是指算法的流程根据给定的条件是否成立而选择执行不同的流向的结构形式,即:(3)循环结构是指从某处开始,按照一定的条件反复执行处理某一步骤的情况反复执行的处理步骤称为循环体循环结构又分为当型循环 和直到型循环 结构形式为:4基本算法语句(1)输入、输出语句和赋值语句:输入语句格式:INPUT“提示内容”;变量 ;输出语句格式:PRINT“提示内容”;表达式 ;赋值语句格式:变量表达式 (2)条件语句:框图:条件语句格式:IFTHEN格式IFTHENELSE格式5循环语句循环语句的格式UNTIL语句WHILE语句顺序结构是每个算法结构都含有的,而对于循环结构有重复性
3、,条件结构具有选择性没有重复性,并且循环结构中必定包含一个条件结构,用于确定何时终止循环体循环结构和条件结构都含有顺序结构利用循环结构表示算法,第一要先确定是利用当型循环结构,还是直到型循环结构;第二要选择准确的表示累计的变量;第三要注意在哪一步开始循环,满足什么条件不再执行循环体6算法案例(1)辗转相除法与更相减损术辗转相除法:求两个正整数的最大公约数的方法,用较大的数m除以较小的数n得到余数r,反复操作,直到余数为0为止,即mntr(0rn)因此要用“后测试型”循环语句表示,其程序如下:INPUT m,nDOrm MOD nmnnrLOOP UNTIL r0PRINT mEND(2)秦九韶
4、算法n次多项式f(x)anxnan1xn1a1xa0(anxn1an1xn2a1)xa0(anxan1)xan2)xa1)xa0得到递推公式v0an且vkvk1xank,其中k1,2,n其算法可用循环语句来实现(3)进位制将十进制数化为二进制数的算法称为除2取余法;将十进制数化为k进制数的算法称为除k取余法将k进制数化为十进制数的算法步骤为:第一步:从左到右依次取k进制数anan1a1a0(k)各位上的数字乘以k的幂,k的幂从n开始取值,每次递减1,递减到0,即ankn,an1kn1,a1k,a0k0;第二步:把所有积加起来,就得到十进制数三高考类型分析例1. (1)执行下面的程序框图,如果输
5、入的t1,3,则输出的s属于()A3,4 B5,2C4,3 D2,5(2)执行下面的程序框图,若输入的的值为0.25,则输出的n的值为_(3)阅读如下程序框图,如果输出i5,那么在空白矩形框中应填入的语句为( )AS2*i2 BS2*i1CS2*i DS2*i4【分析】(1)条件结构、框图功能是求分段函数的值域(2)根据运行顺序计算出的值,当时输出n的值,结束程序n为循环次数(3)根据程序框图表示的算法对i的取值进行验证【解析】(1)因为t1,3,当t1,1)时,s3t3,3);当t1,3时,s4tt2(t24t)(t2)243,4,所以s3,4 (3)当i2时,S221510;当i3时,仍然
6、循环,排除D;当i4时,S241910;当i5时,不满足S10,即此时S10,输出i.此时A项求得S2528,B项求得S2519,C项求得S2510,故只有C项满足条件【评析】(1)循环结构中的条件判断循环结构中的条件是高考常考的知识点,主要是控制循环的变量应该满足的条件是什么满足条件则进入循环或者退出循环,此时要特别注意当型循环与直到型循环的区别(2)条件结构中的条件判断条件结构中条件的判断关键是明确条件结构的功能,然后根据“是”的分支成立的条件进行判断(1)下面程序运行的结果为( )n10S100DOSSnnn1LOOP UNTIL S70,不满足要求,继续运行;第二次循环后,S81,n8
7、,8170,不满足要求,继续运行;第三次循环后,S73,n7,7370,不满足要求,继续运行;第四次循环后,S66,n6,6670,满足条件,结束循环【点评】1.在用WHILE语句和UNTIL语句编写程序解决问题时,一定要注意它们的格式及条件的表述方法WHILE语句中是当条件满足时执行循环体,而UNTIL语句中是当条件不满足时执行循环体(2)下面程序运行后输出的结果为( )a0j1WHILEj5a(aj) MOD 5jj1ENDaA0 B1 C2 D4【解析】当j1时,余数a1;当j2时,余数a3;当j3时,余数a1;当j4时,余数a0;当j5时,余数a0;当j6时,不满足条件,此时退出循环【
8、点评】1.在解答本题时,易错选D而导致错误,错误原因是:对循环过程不理解,误认为j1时,余数a0,即j1时,没有执行第一次循环其错误过程如下:当j1时,余数a0;当j2时,余数a2;当j3时,余数a0;当j4时,余数a4;当j5时,余数a4.2解决算法语句的有关问题时,还有以下几点易造成失误,备考时要高度关注:(1)对基本算法语句的功能及格式要求不熟悉(2)条件语句中的嵌套结构混乱,不能用分段函数(1)用辗转相除法或更相减损术求375和85的最大公约数;(2)用秦九韶算法计算f(x)x52x43x34x25x6在x2时的值;(3)将七进制数235(7)转化为八进制数【解析】(1)用辗转相除法:
9、37585435853521535152515350375与85的最大公约数为5.用更相减损术:375852902908520520585120120853585355050351535152020155155101055.375与85的最大公约数为5. (3)先化成十进制,再化成八进制235(7)272375124124174(8),即235(7)174(8)【点评】掌握三种特殊算法的求解思想和方法是顺利解决问题的前提和必要条件某算法的程序框图如图所示,其中输入的变量x在1,2,3,24这24个整数中等可能随机产生(1)分别求出按程序框图正确编程运行时输出y的值为i的概率Pi(i1,2,3)
10、;(2)甲、乙两同学依据自己对程序框图的理解,各自编写程序重复运行n次后,统计记录了输出y的值为i(i1,2,3)的频数以下是甲、乙所作频数统计表的部分数据甲的频数统计表(部分)运行次数n输出y的值为1的频数输出y的值为2的频数输出y的值为3的频数30146102 1001 027376697乙的频数统计表(部分)运行次数n输出y的值为1的频数输出y的值为2的频数输出y的值为3的频数30121172 1001 051696353当n2 100时,根据表中的数据,分别写出甲、乙所编程序各自输出y的值为i(i1,2,3)的频率(用分数表示),并判断两位同学中哪一位所编写程序符合算法要求的可能性较大
11、;(3)按程序框图正确编写的程序运行3次,求输出y的值为2的次数的分布列及数学期望 (2)当n2 100时,甲、乙所编程序各自输出y的值为i(i1,2,3)的频率如下:输出y的值为1的频数输出y的值为2的频数输出y的值为3的频数甲乙比较频率趋势与概率,可得乙同学所编程序符合算法要求的可能性较大(3)随机变量可能的取值为0,1,2,3.P(0)C,P(1)C,P(2)C,P(3)C,故的分布列为0123P所以,E01231.即的数学期望为1.根据如图所示的程序框图,将输出的x,y的值依次分别记为x1,x2,x3,xk;y1,y2,y3,yk.(1)分别求数列xk和yk的通项公式;(2)令zkxk
12、yk,求数列zk的前k项和Tk,其中kN*,k2 017. (2)Tkx1y1x2y2xkyk1(31)3(321)(2k1)(3k1)13332(2k1)3k13(2k1)令Sk13332(2k1)3k,则3Sk132333(2k1)3k1,得2Sk323223323k(2k1)3k12(3323k)3(2k1)3k123(2k1)3k13k16(2k1)3k12(1k)3k16,Sk(k1)3k13.又13(2k1)k2,Tk(k1)3k13k2.【点评】以程序框图或算法语句为题设条件常与统计问题、数列问题、函数问题综合,求解时关键是将程序框图或算法语句转化翻译四方法总结1了解算法思想,理
13、解算法含义的关键在于体现程序或步骤的明确性和有限性2深刻理解算法的三种逻辑结构特征,需通过实际例子体会算法流程的全过程,认清所解决问题的实质如解决分段函数的求值问题时,一般采用条件结构设计算法;如累加求和,累乘求积等问题,往往包含循环过程,非常适合计算机处理,这类问题很多程序框图都用循环结构进行设计,同时也要注意三种基本结构的共同特点3特别提醒的是,程序框图主要包括三个部分:(1)弄清相应操作框的内容;(2)带箭头的流程线及判断框的条件;(3)框内外必要的文字说明和算法功能读懂流程图要从这三方面研究,流程线反映了流程执行的先后顺序,主要看箭头方向,框内外文字说明了操作内容以及流向4(1)辗转相除法与更相减损术是求两个正整数的最大公约数的两种方法,关键是掌握这两种算法的操作步骤,计算时应认真、细心,确保中间结果的准确性,因为下一次计算要用到上一次计算的结果(2)利用“除k取余法”将十进制数化为k进制数时,要把各步所得余数从下到上排,切莫把顺序弄错(3)利用秦九韶算法计算多项式的值的关键是正确地将多项式改写,然后由内向外逐次计算由于本次计算用到上一次计算的结果,同样应认真、细致地计算每一步,确保每一步结果的准确性