【数学】2020届一轮复习北师大版算法与算法框图学案
第章 算法初步、统计与统计案例
第一节 算法与算法框图
[考纲传真] 1.了解算法的含义,了解算法的思想.2.理解程序框图的三种基本逻辑结构:顺序结构、条件结构、循环结构.3.了解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义.
1.算法的含义
算法是解决某类问题的一系列步骤或程序,只要按照这些步骤执行,都能使问题得到解决.
2.算法框图
在算法设计中,算法框图(也叫程序框图)可以准确、清晰、直观地表达解决问题的思想和步骤,算法框图的三种基本结构:顺序结构、选择结构、循环结构.
3.三种基本逻辑结构
(1)顺序结构:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法的顺序结构.
其结构形式为
(2)选择结构:需要进行判断,判断的结果决定后面的步骤,像这样的结构通常称作选择结构.
其结构形式为
(3)循环结构:指从某处开始,按照一定条件反复执行某些步骤的情况.反复执行的处理步骤称为循环体.
其基本模式为
4.基本算法语句
任何一种程序设计语言中都包含五种基本的算法语句,它们分别是:输入语句、输出语句、赋值语句、条件语句和循环语句.
5.赋值语句
(1)一般形式:变量=表达式.
(2)作用:将表达式所代表的值赋给变量.
6.条件语句
(1)If—Then—Else语句的一般格式为:
(2)If—Then语句的一般格式是:
7.循环语句
(1)For语句的一般格式:
(2)Do Loop语句的一般格式:
1.注意区分处理框与输入框,处理框主要是赋值、计算,而输入框只是表示一个算法输入的信息.
2.循环结构中必有条件结构,其作用是控制循环进程,避免进入“死循环”,是循环结构必不可少的一部分.
3.注意区分当型循环与直到型循环.直到型循环是“先循环,后判断,条件满足时终止循环”,而当型循环则是“先判断,后循环,条件满足时执行循环”.两者的判断框内的条件表述在解决同一问题时是不同的,它们恰好相反.
[基础自测]
1.(思考辨析)判断下列结论的正误.(正确的打“√”,错误的打“×”)
(1)算法框图中的图形符号可以由个人来确定. ( )
(2)一个算法框图一定包含顺序结构,但不一定包含选择结构和循环结构. ( )
(3)选择结构的出口有两个,但在执行时,只有一个出口是有效的. ( )
(4)在算法语句中,X=X+1是错误的. ( )
[答案] (1)× (2)√ (3)√ (4)×
2.(教材改编)执行如图所示的程序框图,则输出S的值为( )
A.- B. C.- D.
D [按照程序框图依次循环运算,当k=5时,停止循环,当k=5时,S=sin=.]
3.(教材改编)根据给出的程序框图,计算f(-1)+f(2)=( )
A.0 B.1 C.2 D.4
A [f(-1)=4×(-1)=-4,f(2)=22=4,∴f(-1)+f(2)=-4+4=0.]
4.执行如图所示的程序框图,输出的s值为( )
A.2
B.
C.
D.
C [开始:k=0,s=1;第一次循环:k=1,s=2;第二次循环:k=2,s=;第三次循环:k=3,s=,此时不满足循环条件,输出s,故输出的s值为
.故选C.]
5.执行如图所示的程序框图,若输入的x的值为1,则输出的y的值是________.
13 [当x=1时,1<2,则x=1+1=2,当x=2时,不满足x<2,则y=3×22+1=13.]
顺序结构与条件结构
1.(2019·长沙模拟)对于任意点P(a,b),要求P关于直线y=x的对称点Q,则程序框图中的①处应填入( )
A.b=a
B.a=m
C.m=b
D.b=m
D [因为(a,b)与(b,a)关于y=x对称,所以通过赋值a赋值到m,b赋值给a,那么m赋值给b,完成a,b的交换,所以①处应该填写b=m,故选D.]
2.如图所示的程序框图,其作用是输入x的值,输出相应的y值,若x=y,则这样的x的值有( )
A.1个
B.2个
C.3个
D.4个
C [当x≤2时,令y=x2=x⇒x(x-1)=0,解得x=0或x=1;当2
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
D [因为题目要求的是“满足3n-2n>1 000的最小偶数n”,所以n的叠加值为2,所以内填入“n=n+2”.由程序框图知,当内的条件不满足时,输出n,所以内填入“A≤1 000”.故选D.]
►考法3 辨析程序框图的功能
【例3】 如图所示的程序框图,该算法的功能是( )
A.计算(1+20)+(2+21)+(3+22)+…+(n+1+2n)的值
B.计算(1+21)+(2+22)+(3+23)+…+(n+2n)的值
C.计算(1+2+3+…+n)+(20+21+22+…+2n-1)的值
D.计算[1+2+3+…+(n-1)]2+(20+21+22+…+2n)的值
C [初始值k=1,S=0,第1次进入循环体时,S=1+20,k=2;当第2次进入循环体时,S=1+20+2+21,k=3,…;给定正整数n,当k=n时,最后一次进入循环体,则有S=1+20+2+21+…+n+2n-1,k=n+1,终止循环体,输出S=(1+2+3+…+n)+(20+21+22+…+2n-1),故选C.]
[规律方法] 与循环结构有关问题的常见类型及解题策略
(1)已知程序框图,求输出的结果,可按程序框图的流程依次执行,最后得出结果.
(2)完善程序框图问题,结合初始条件和输出结果,分析控制循环的变量应满足的条件或累加、累乘的变量的表达式.
(3)对于辨析程序框图功能问题,可将程序执行几次,即可根据结果作出判断.
易错警示:(1)注意区分当型循环和直到型循环.
(2)循环结构中要正确控制循环次数.
(3)要注意各个框的顺序.
(1)如图是计算1+++…+的值的程序框图,则图中①②处应填写的语句分别是( )
A.n=n+2,i>16
B.n=n+2,i≥16
C.n=n+1,i>16
D.n=n+1,i≥16
(2)(2018·唐山模拟)根据下面的程序框图,对大于2的整数N,输出的数列的通项公式是( )
A.an=2n
B.an=2(n-1)
C.an=2n
D.an=2n-1
(1)A (2)C [(1)式子1+++…+中所有项的分母构成首项为1,公差为2的等差数列.由31=1+(k-1)×2,得k=16,即数列共有16项.
(2)由程序框图知,本题为求首项a1=2,公比q=2的等比数列的通项公式,即an=2n.]
基本算法语句
【例3】 (2019·邢台模拟)执行如图所示的算法,若输出的结果是2,则输入的x=________.
0和2 [根据条件语句可知算法的功能是求分段函数y=的值.当x<1时,令2x+1=2,解得x=0;当x≥1时,令x2-x=2,解得x=2或-1(舍去).]
[规律方法] 算法语句的三个步骤
解决算法语句有三个步骤:首先通读全部语句,把它翻译成数学问题;其次领悟该语句的功能;最后根据语句的功能运行算法,解决问题.
[跟踪训练] (2019·保定模拟)根据如图所示的语句,可知输出的结果S=________.
7 [i=1,S=1;S=1+2=3,i=1+3=4<8;
S=3+2=5,i=4+3=7<8;
S=5+2=7,i=7+3=10>8.
退出循环,故输出S=7.]
1.(2018·全国卷Ⅱ)为计算S=1-+-+…+-,设计了如图所示的程序框图,则在空白框中应填入( )
A.i=i+1
B.i=i+2
C.i=i+3
D.i=i+4
B [由题意可将S变形为S=1++…+-++…+,则由S=N-T,得N=1++…+,T=++…+.据此,结合N=N+,T=T+易知在空白框中应填入i=i+2.故选B.]
2.(2017·全国卷Ⅱ)执行如图所示的程序框图,如果输入的a=-1,则输出的S=( )
A.2
B.3
C.4
D.5
B [当K=1时,S=0+(-1)×1=-1,a=1,执行K=K+1后,K=2;
当K=2时,S=-1+1×2=1,a=-1,执行K=K+1后,K=3;
当K=3时,S=1+(-1)×3=-2,a=1,执行K=K+1后,K=4;
当K=4时,S=-2+1×4=2,a=-1,执行K=K+1后,K=5;
当K=5时,S=2+(-1)×5=-3,a=1,执行K=K+1后,K=6;
当K=6时,S=-3+1×6=3,执行K=K+1后,K=7>6,输出S=3.结束循环.
故选B.]
3.(2016·全国卷Ⅱ)中国古代有计算多项式值的秦九韶算法,如是图是实现该算法的程序框图,执行该程序框图,若输入的x=2,n=2,依次输入的a为2,2,5,则输出的s=( )
A.7
B.12
C.17
D.34
C [输入x=2,n=2.第一次,a=2,s=2,k=1,不满足k>n;
第二次,a=2,s=2×2+2=6,k=2,不满足k>n;
第三次,a=5,s=6×2+5=17,k=3,满足k>n,输出s=17.]
4.(2016·全国卷Ⅰ)执行如图的程序框图,如果输入的x=0,y=1,n=1,则输出x,y的值满足( )
A.y=2x
B.y=3x
C.y=4x
D.y=5x
C [输入x=0,y=1,n=1,运行第一次,x=0,y=1,不满足x2+
y2≥36;运行第二次,x=,y=2,不满足x2+y2≥36;运行第三次,x=,y=6,满足x2+y2≥36,输出x=,y=6.由于点在直线y=4x上,故选C.]