当前位置:首页 > 2017届高考数学大一轮复习 第十一章 算法初步 文 北师大版
答案:B
考点二 条件语句
[例2] 根据如图所示的程序语句,当输入a,b分别为2,3时,最后输出的m的值是________. 审题视点 条件语句,按照程序的运行顺序和条件语句的特点解答.
解析 输入a,b分别为2,3时,a>b不成立,所以执行ELSE后面的语句,把b赋值给m,可知m=3,输出的结果是3. 答案 3
解答或编写有条件语句的程序时注意条件满足与不满足所对应的不同结果,另外还要注意If—Then—Else—End If的配对,尤其在嵌套结
构时,一层配对就是一个完整的条件结构,在书写程序时易漏掉某一部分.
1.(2016·南阳模拟)输入x 以上表示的函数表达式是________.
解析:所给语句是条件语句,表示的是分段函数
?2x-3 x≤2y=?
?x x>2
2
.
?2x-3 x≤2
答案:y=?
?x x>2
?x-?
2.已知函数y=?2
??lgx
x
,,
x|>
根据输入的x的值,计算y的值.请写出算法步骤,并编写算法语句实现上述目的.
解:其算法步骤如下: 1.输入x;
2.若|x|≤1,则y=x-5, 否则y=lgx; 3.输出y.
用算法语句表示如下:
考点三 循环语句
[例3] 用循环语句设计一个算法,求满足条件1+4+7+10+…+n>100的最小正整数,画出算法框图.
2
2
审题视点 循环次数未知,用Do Loop语句. 解 算法框图如下: 算法如下:
s=0 i=1
Do s=s+i i=i+3 Loop While s≤100 输出i-3
当循环次数已知时,用For语句比较适合;当循环次数未知时,用Do Loop语句比较适合.通常情况下,For语句可以转化为Do Loop语
句,反之则不一定.
1.(2016·东北三校模拟)下面程序运行的结果为( ) A.4 C.6 D.7
解析:n=10,S=100,∴S=100-10=90
B.5
n=10-1=9
∴S=90-9=81
n=9-1=8 S=81-8=73 n=8-1=7 S=73-7=66<=70 n=7-1=6.
答案:C
2.读程序回答问题
甲 乙
对甲、乙两程序和输出结果判断正确的是( ) A.程序不同,结果不同 B.程序不同,结果相同 C.程序相同,结果不同 D.程序相同,结果相同
解析:从两个程序可知它们的程序语句不同,但其算法都是求1+2+3+…+1 000,故结果相同. 答案:B
读不懂算法语言致误
[典例] (2016·九江模拟)下面程序运行后输出的结果为________.
解题指南 (1)本程序使用了什么格式的条件语句.(2)条件是什么,执行的运算是什么.
解析 本题中使用了“If—Then—Else”格式的条件语句,计算机执行这种形式的语句时,首先对If后的条件进行判断,如果条件符合,就执行Then后面的语句,若条件不符合,就执行Else后面的语句,然后结束这一条件语句.由于x=5,所以条件不满足,程序执行Else语句后面的y=y+3,所以y=-17,从而得x-y=5-(-17)=22;y-x=-17-5=-22.
答案 22,-22
错因分析 读不懂本程序的含义是导致本题错误的根本原因
备考建议 解决算法语句的有关问题时,还有以下几点易造成失误,备考时要高度关注: (1)对基本算法语句的功能及格式要求不熟悉.
(2)条件语句中的嵌套结构混乱,不能用分段函数的形式直观描述. (3)当型循环与直到型循环的不同没有准确把握.
◆关于赋值语句,有以下几点需要注意
(1)“=”称为赋值号,不是等号,如:x=y表示将y的值赋予x; (2)形式中的“表达式”可以是一个数据、常量或算式,如:
x=1,y=x+y;
(3)“=”左边只能是变量名,不能是表达式,如x=5,不能写成5=x; (4)对一个变量,可以多次赋值,如:x=1,x=5,x=6,则结果为x=6. ◆两种循环语句的区别 (1)For语句
For语句是循环体得以运行的外部“环境”,控制着循环的开始与结束,决定着循环运行的次数. (2)Do Loop语句
Do Loop语句一般用于不知道循环次数的循环结构,要根据其他形式的终止条件停止循环,在这种情况下才采用.
课时规范训练 [A级 基础演练]
1.(2016·安徽黄山调研)对于如图所给的算法中,执行循环的次数是( )
S=0
For i=1 To 1 000
S=S+i
Next 输出S
A.1 000 C.1 001
B.999 D.998
解析:因为循环中初值为1,终值为1 000,故循环的次数是1 000. 答案:A
2.(2016·安庆调研)条件语句的一般形式如图所示,其中B表示的是( )
A.条件 B.条件语句
共分享92篇相关文档