- 2021-06-16 发布 |
- 37.5 KB |
- 21页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
【数学】2019届一轮复习北师大版(文科数学)第十二章第2讲 算法与程序框图学案
第2讲 算法与程序框图 [学生用书P202] 1.算法与程序框图 (1)算法 ①算法通常是指按照一定规则解决某一类问题的明确和有限的步骤. ②应用:算法通常可以编成计算机程序,让计算机执行并解决问题. (2)程序框图 定义:程序框图又称流程图,是一种用程序框图、流程线及文字说明来表示算法的图形. 2.三种基本逻辑结构 名称 内容 顺序结构 条件结构 循环结构 定义 由若干个依次执行的步骤组成,这是任何一个算法都离不开的基本结构 算法的流程根据条件是否成立有不同的流向,条件结构就是处理这种过程的结构 从某处开始,按照一定的条件反复执行某些步骤的结构,反复执行的步骤称为循环体 程序框图 3.基本算法语句 (1)三种语句的一般格式和功能 语句 一般格式 功能 输入语句 INPUT “提示内容”;变量 输入信息 输出语句 PRINT “提示内容”;表达式 输出结果 赋值语句 变量=表达式 将表达式的值赋给变量 (2)条件语句 ①条件语句与程序框图中的条件结构相对应. ②条件语句的格式及框图: a.IFTHEN格式 b.IFTHENELSE格式 (3)循环语句 ①算法中的循环结构是由循环语句来实现的. ②循环语句的格式及框图: a.UNTIL语句 b.WHILE语句 判断正误(正确的打“√”,错误的打“×”) (1)算法只能解决一个问题,不能重复使用.( ) (2)程序框图中的图形符号可以由个人来确定.( ) (3)输入框只能紧接开始框,输出框只能紧接结束框.( ) (4)条件结构的出口有两个,但在执行时,只有一个出口是有效的.( ) (5)5=x是赋值语句.( ) (6)输入语句可以同时给多个变量赋值.( ) 答案:(1)× (2)× (3)× (4)√ (5)× (6)√ 执行如图所示的程序框图,则输出S的值为( ) A.10 B.17 C.19 D.36 解析:选C.执行程序:k=2,S=0;S=2,k=3;S=5,k=5;S=10,k=9;S=19,k=17,此时不满足条件k<10,终止循环,输出结果为S=19,故选C. (教材习题改编)阅读下面的程序: INPUT x IF x<0 THEN x=-x END IF PRINT x END 则程序执行的是( ) A.求实数x的绝对值 B.求实数x的相反数 C.求一个负数的绝对值 D.求一个负数的相反数 解析:选A.程序是执行求实数x的绝对值,故选A. 执行如图所示的程序框图,则输出的A是________. 解析:i=0,A=2;A=2+=,i=1;A=2+=,i=2;A=2+=,i=3;A=2+=,i=4,输出A,故输出的A=. 答案: 执行如图所示的程序框图,则输出的s值为________. 解析:k=0,s=0,满足k≤2;s=0,k=1,满足k≤2; s=1,k=2,满足k≤2;s=1+23=9,k=3,不满足k≤2,输出s=9. 答案:9 顺序结构与条件结构[学生用书P203] [典例引领] (1)阅读如图所示的程序框图,若输入的a,b,c分别是21,32,75,则输出的a,b,c分别是( ) A.75,21,32 B.21,32,75 C.32,21,75 D.75,32,21 (2)执行如图所示的程序框图,如果输入的t∈[-1,3],则输出的s属于( ) A.[-3,4] B.[-5,2] C.[-4,3] D.[-2,5] 【解析】 (1)由程序框图中的各个赋值语句可得x=21,a=75,c=32,b=21, 故a,b,c分别是75,21,32. (2)由程序框图得分段函数s= 所以当-1≤t<1时,s=3t∈[-3,3); 当1≤t≤3时,s=4t-t2=-(t-2)2+4, 所以此时3≤s≤4.综上函数的值域为[-3,4], 即输出的s属于[-3,4]. 【答案】 (1)A (2)A 若本例(2)的判断框中的条件改为“t≥1?”,则输出的s的范围是________. 解析:由程序框图得分段函数s= 所以当1≤t≤3时,s=3t∈[3,9], 当-1≤t<1时,s=4t-t2=-(t-2)2+4, 所以此时-5≤s<3.综上函数的值域为[-5,9], 即输出的s属于[-5,9]. 答案:[-5,9] 顺序结构和条件结构的特点 (1)顺序结构 顺序结构是最简单的算法结构,语句与语句之间、框与框之间是按从上到下的顺序进行的. (2)条件结构 利用条件结构解决算法问题时,重点是判断框,判断框内的条件不同,对应的下一图框中的内容和操作要相应地进行变化,故要重点分析判断框内的条件是否满足. [通关练习] 1.(2017·高考山东卷)执行如图所示的程序框图,当输入的x值为4时,输出的y的值为2,则空白判断框中的条件可能为( ) A.x>3 B.x>4 C.x≤4 D.x≤5 解析:选B.当x=4时,若执行“是”,则y=4+2=6,与题意矛盾;若执行“否”,则y=log24=2,满足题意,故应执行“否”.故判断框中的条件可能为x>4.选B. 2.(2018·福州五校联考)定义[x]为不超过x的最大整数,例如[1.3]=1.执行如图所示的程序框图,当输入的x为4.7时,输出的y值为( ) A.7 B.8.6 C.10.2 D.11.8 解析:选C.当输入的x为4.7时,执行程序框图可知,4.7-[4.7]=0.7,即4.7-[4.7]不等于0,因而可得y=7+([4.7-3]+1)×1.6=10.2,输出的值为10.2,故选C. 循环结构(高频考点) [学生用书P204] 循环结构是高考命题的一个热点问题,多以选择题、填空题的形式呈现,多为容易题或中档题.主要命题角度有: (1)由框图求输出的结果; (2)完善程序框图; (3)由程序框图及输出结果,求输入的值. [典例引领] 角度一 由框图求输出的结果 (1)(2017·高考全国卷Ⅱ)执行如图程序框图,如果输入的a=-1,则输出的S=( ) A.2 B.3 C.4 D.5 第(1)题图 第(2)题图 (2)(2016·高考全国卷Ⅰ)执行如图所示的程序框图,如果输入的x=0,y=1,n=1,则输出x,y的值满足( ) A.y=2x B.y=3x C.y=4x D.y=5x 【解析】 (1)由程序框图可得S=0,a=-1,K=1≤6; S=0+(-1)×1=-1,a=1,K=2≤6; S=-1+1×2=1,a=-1,K=3≤6; S=1+(-1)×3=-2,a=1,K=4≤6; S=-2+1×4=2,a=-1,K=5≤6; S=2+(-1)×5=-3,a=1,K=6≤6; S=-3+1×6=3,a=-1,K=7>6,退出循环,输出S=3.故选B. (2)输入x=0,y=1,n=1,得x=0,y=1,x2+y2=1<36,不满足条件,执行循环;n=2,x=,y=2,x2+y2=+4<36,不满足条件,执行循环;n=3,x=+1=,y=6,x2+y2=+36>36,满足条件,结束循环,所以输出的x=,y=6,满足y=4x,故选C. 【答案】 (1)B (2)C 角度二 完善程序框图 (1)(2018·湖南十校联考)执行如图所示的程序框图,若输出S的值为-20,则条件框内应填写( ) A.i>3? B.i<4? C.i>4? D.i<5? (2)(2017·高考全国卷Ⅰ)如图所示的程序框图是为了求出满足3n-2n>1 000的最小偶数n,那么在和两个空白框中,可以分别填入( ) A.A>1 000和n=n+1 B.A>1 000和n=n+2 C.A≤1 000和n=n+1 D.A≤1 000和n=n+2 【解析】 (1)由程序框图可得,第一次循环,S=10-2=8,i=2;第二次循环,S=8-4=4,i=3;第三次循环,S=4-8=-4,i=4;第四次循环,S=-4-16=-20,i=5,结束循环,故条件框内应填写“i<5?”,选D. (2)因为要求的是最小偶数n, 所以处理框中应填入n=n+2,排除A,C; 判断框中填入A≤1 000时, 才能循环,排除B,故选D. 【答案】 (1)D (2)D 角度三 由程序框图及输出结果,求输入的值 (2017·高考全国卷Ⅲ)执行如图所示的程序框图,为使输出S的值小于91,则输入的正整数N的最小值为( ) A.5 B.4 C.3 D.2 【解析】 要求N的最小值,观察选项,发现其中最小的值为2,不妨将2代入检验.当输入的N为2时,第一次循环,S=100,M=-10,t=2;第二次循环,S=90,M=1,t=3,此时退出循环,输出S=90,符合题意,故选D. 【答案】 D 利用循环结构表示算法的步骤 利用循环结构表示算法,第一要先确定是利用当型循环结构,还是利用直到型循环结构;第二要选择准确的表示累计的变量;第三要注意在哪一步开始循环,满足什么条件不再执行循环体. [通关练习] 1.(2018·湖南五市十校联考)执行如图所示的程序框图,则输出的a值为( ) A.-3 B. C.- D.2 解析:选D.第1次循环,a=-3,i=2;第2次循环,a=-,i=3;第3次循环,a=,i=4;第4次循环,a=2,i=5;…所以周期为4,故最后输出的a的值为2. 2.(2018·贵阳检测)辗转相除法,又名欧几里得算法,是求两个正整数的最大公因子的算法.它是已知最古老的算法之一,在中国则可以追溯至东汉时期出现的《九章算术》.图中的程序框图所描述的算法就是欧几里得辗转相除法.若输入m=5 280,n=12 155,则输出的m的值为 ________. 解析:法一:依题意,当输入m=5 280,n=12 155时,执行题中的程序框图,进行第一次循环时,m除以n的余数r=5 280,m=12 155,n=5 280,r≠0;进行第二次循环时,m除以n的余数r=1 595,m=5 280,n=1 595,r≠0;进行第三次循环时,m除以n的余数r=495,m=1 595,n=495,r≠0;进行第四次循环时,m除以n的余数r=110,m =495,n=110,r≠0;进行第五次循环时,m除以n的余数r=55,m=110,n=55,r≠0;进行第六次循环时,m除以n的余数r=0,m=55,n=0,r=0,此时结束循环,输出的m的值为55. 法二:依题意,注意到5 280=25×3×5×11,12 155=5×11×221,因此5 280与12 155的最大公因子是55,即输出的m的值为55. 答案:55 基本算法语句[学生用书P206] [典例引领] 阅读下面两个算法语句: i=1 WHILE i*(i+1)<20 i=i+1 WEND PRINT “i=”;i END 图1 i=1 DO i=i+1 LOOP UNTIL i*(i+1)<20 PRINT “i=”;i END 图2 执行图1中语句的结果是输出________; 执行图2中语句的结果是输出________. 【解析】 执行图1中语句,得到(i,i·(i+1))的结果依次为(1,2),(2,6),(3,12),(4,20),故输出i=4. 执行图2中语句的情况如下: i=1,i=i+1=2,i·(i+1)=6<20(是), 结束循环,输出i=2. 【答案】 i=4 i=2 解决算法语句的三个步骤 (1)通读全部语句,把它翻译成数学问题; (2)领悟该语句的功能; (3)根据语句的功能运行程序,解决问题. [通关练习] 1.为了在运行如图所示的程序之后得到结果y=16,则键盘输入的x应该是( ) INPUT x IF x<0 THEN y=(x+1)*(x+1) ELSE y=(x-1)*(x-1) END IF PRINT y END A.±5 B.5 C.-5 D.0 解析:选A.因为y= 所以当x<0时,令(x+1)2=16,所以x=-5; 当x≥0时,令(x-1)2=16,所以x=5,所以x=±5. 2.下列程序执行后输出的结果是________. i=11 S=1 DO S=S*i i=i-1 LOOP UNTIL i<9 PRINT S END 解析:程序反映出的算法过程为 i=11⇒S=11×1,i=10;i=10⇒S=11×10,i=9; i=9⇒S=11×10×9,i=8; i=8<9退出循环,执行“PRINT S”,故S=990. 答案:990 解决程序框图问题要注意几个常用变量 (1)计数变量:用来记录某个事件发生的次数,如i=i+1. (2)累加变量:用来计算数据之和,如S=S+i. (3)累乘变量:用来计算数据之积,如p=p×i. 循环结构中的条件判断 循环结构中的条件是高考的热点,主要是控制循环的变量应该满足的条件是什么.满足条件则进入循环或退出循环,此时要特别注意当型循环与直到型循环的区别. 条件结构中的条件判断 条件结构中条件的判断关键是明确条件结构的功能,然后根据“是”的分支成立的条件进行判断. 解决算法问题应关注三点 (1)赋值号左边只能是变量(不能是表达式),在一个赋值语句中只能给一个变量赋值. (2)注意条件结构与循环结构的联系:循环结构有重复性,条件结构具有选择性没有重复性. (3)直到型循环是“先循环,后判断,条件满足时终止循环”,当型循环则是“先判断,后循环,条件满足时执行循环”;两者的判断框内的条件表述在解决同一问题时是不同的,它们恰好相反. [学生用书P341(单独成册)] 1.执行如图所示的程序框图,若输出i的值为2,则输入x的最大值是( ) A.5 B.6 C.11 D.22 解析:选D.执行该程序可知 解得 即8查看更多
相关文章
- 当前文档收益归属上传用户