宋志明 胡松林
考查算法的基本结构
此类题主要考查同学们对三种基本算法结构的理解程度,能正确读懂框图、输出结果或补充框图缺失的语句等.
例1 如图所示程序框图,如果输入三个数[a,b,c,]要求输出这三个数中最大的数,那么在空白的判断框中,应该填入下面四个选项中的( )
[开始] [输入[a,b,c]] [是][否] [否][是][结束][输出[x]]
A. [c>x]? B. [x>c]?
C. [c>b]? D. [b>c]?
解析 根据题意知变量[x]表示三个数中的最大值第一个判断框将[a]与[b]中的较大值赋值给[x],则第二个判断框应判[x]与[c]的大小,并将较大者赋值给[x].
答案 A
点拨 本题考查条件结构,解题时要准确把握变量的含义,明确条件结构流向的判定条件,作出正确选择;同时要求理解赋值语句的新值置换前值的特点.
例2 执行如图所示的程序框图,若输入[t=0.01,]则输出[n=]( )
[开始] [输入[t]] [输出[n]] [结束] [是][否]
A. 5
答案 C
点拨 本题主要考查循环结构,解题时可以根据框图的顺序将各个变量依次列出(变量变化的顺序十分关键,不能颠倒),利用表格形式追踪每一次循环,并准确判定循环退出的条件.
考查算法的基本功能
此类试题考查同学们应用算法以及算法思想分析问题、解决问题的能力,既有实用价值,又突出算法的筛选、迭代、求和、排序等功能的工具性与有效性.
例3 如果执行如图所示程序框图,输入正整数[N(N≥2)]和实数,[a1,a2,…,aN]输出[A,B,]则( )
[开始] [输入[N,a1,a2,…,an]] [是][是][否][否][否] [结束][输出[A,B]]
A. [A+B]为[a1,a2,…,aN]的和
B. [A+B2]为[a1,a2,…,aN]的算术平均数
C. [A]和[B]分别是[a1,a2,…,aN]中的最大的数和最小的数
D. [A]和[B]分别是[a1,a2,…,aN]中的最小的数和最大的数
解析 由当[x>A]时,[A=x]知,[A]应为较大值;由[x答案 C
点拨 本题是实现筛选功能的程序框图,这种算法具有一定的代表性和普遍适用性,突出条件结构的选择功能和循环结构的重复处理功能.
例4 执行如图所示程序框图,如果输入的[N=10,]那么输出的[S=]( )
[开始] [输入[N]] [结束][输出[S]] [否]
A. [1+12+13+…+110]
B. [1+12!+13!+…+110!]
C. [1+12+13+…+111]
D. [1+12!+13!+…+111!]
解析 依次列举如下:
[T1=1,S1=1,k1=2;]
[T2=11×2,S2=1+12!,k2=3;]
[T3=11×2×3,S3=1+12!+13!,k3=4;]
[…]
[T9=19!,][S9=1+12!+…+19!,k9=10;]
[T10=110!,S10=1+12!+…+110!,k10=11>10.]
结束循环.
答案 B
点拨 本题实现的算法功能是迭代求和,解题时要求在读懂逻辑结构的基础上通过逐步迭代归纳出一般规律,严格把控循环迭代的次数是关键.
考查算法与其他知识的交汇
此类试题“借算法之形”对其他数学知识点进行考查,通常与函数、数列的知识结合,考查同学们综合应用数学知识的能力.
例5 执行如图所示程序框图,如果输入的[t∈[-1,3],]则输出的[S]属于( )
[开始] [输入[t]] [结束][输出[S]][是][否]
A. [-3,4] B. [-5,2]
C. [-4,3] D. [-2,5]
解析 由框图得分段函数,[3t, t<1,4t-t2, t≥1,]
当[-1≤t<1]时,[S=3t∈[-3,3]].
当[1≤t≤3]时,[S=-(t-2)2+4∈[3,4],]
因此值域为[[-3,4].]
答案 A
点拨 本题是程序框图与函数结合的考题,解题要求准确转化框图为分段函数值域问题.
例6 如果执行如图所示框图,输入[N=5,]则输出的数等于( )
[结束] [输出[S]] [否] [开始] [输入[N]] [是]
A. [54] B. [45] C. [65] D. [56]
解析 记第[i]次循环的[S]值为[Si,]依次列举[S1=][0+12,S2=11×2+12×3,S3=11×2+12×3+13×4+14×5,…]
[S5=11×2+12×3+13×4+14×5+15×6=1-12+12-13+…][+15-16=56.]
答案 D
点拨 本题是程序框图与数列结合的考题,要求读懂框图并且掌握裂项相消求和的方法. 如果把“[N=5]”改为“[N=2015]”结果又如何呢?
考查经典算法案例
例7 如下程序框图的算法思路源于我国古代数学名著《九章算术》中的“更相减损术”. 执行该程序框图,若输入的[a,b]分别为14,18,则输出的[a]为( )
[是][开始] [输入[a,b]] [输出[a]] [结束] [是][否][否]
A. 0 B. 2 C. 4 D. 14
解析 将变量[a,b]在各次循环中的值列表知,当[a=b]时终止循环.
答案 B
点拨 本题考查更相减损术,解题的关键是要理解条件选择结构的流出方向及循环终止的条件. 教材涉及的其他典型算法案例也值得关注.