第十三章 推理与证明、算法、复数 13.4 算法与算法框图试题 理 北
师大版
1.算法的含义
算法是解决某类问题的一系列步骤或程序,只要按照这些步骤执行,都能使问题得到解决.
2.算法框图
在算法设计中,算法框图(也叫程序框图)可以准确、清晰、直观地表达解决问题的思想和步
骤,算法框图的三种基本结构:顺序结构、选择结构、循环结构.
3.三种基本逻辑结构
(1)顺序结构:按照步骤依次执行的一个算法,称为具有“顺序结构”的算法,或者称为算法
的顺序结构.
其结构形式为
(2)选择结构:需要进行判断,判断的结果决定后面的步骤,像这样的结构通常称作选择结构.
其结构形式为
(3)循环结构:指从某处开始,按照一定条件反复执行某些步骤的情况.反复执行的处理步骤
称为循环体.
其基本模式为
4.基本算法语句
任何一种程序设计语言中都包含五种基本的算法语句,它们分别是:输入语句、输出语句、
赋值语句、条件语句和循环语句.
5.赋值语句
(1)一般形式:变量=表达式.
(2)作用:将表达式所代表的值赋给变量.
6.条件语句
(1)If—Then—Else 语句的一般格式为:
If 条件 Then
语句 1
Else
语句 2
End If
(2)If—Then 语句的一般格式是:
If 条件 Then
语句
End If
7.循环语句
(1)For 语句的一般格式:
For 循环变量=初始值 To 终值
循环体
Next
(2)Do Loop 语句的一般格式:
Do
循环体
Loop While 条件为真
【思考辨析】
判断下列结论是否正确(请在括号中打“√”或“×”)
(1)算法只能解决一个问题,不能重复使用.( × )
(2)算法框图中的图形符号可以由个人来确定.( × )
(3)输入框只能紧接开始框,输出框只能紧接结束框.( × )
(4)选择结构的出口有两个,但在执行时,只有一个出口是有效的.( √ )
(5)5=x 是赋值语句.( × )
(6)输入语句可以同时给多个变量赋值.( √ )
1.已知一个算法:
(1)m=a.
(2)如果 b
36,满足 x2+y2≥36,故退出循环,输出 x=3
2
,y=6,满足 y=4x,故
选 C.
命题点 2 完善算法框图
例 4 (2016·衡水一模)如图给出的是计算1
2
+1
4
+1
6
+…+ 1
20
的值的一个框图,其中菱形判断
框内应填入的条件是( )
A.i>10 B.i<10
C.i>11 D.i<11
答案 A
解析 经过第一次循环得到 s=1
2
,i=2,此时的 i 不满足判断框中的条件;
经过第二次循环得到 s=1
2
+1
4
,i=3,此时的 i 不满足判断框中的条件;
经过第三次循环得到 s=1
2
+1
4
+1
6
,i=4,此时的 i 不满足判断框中的条件;
…;
经过第十次循环得到 s=1
2
+1
4
+1
6
+…+ 1
20
,i=11,此时的 i 满足判断框中的条件,执行输
出,
故判断框中的条件是“i>10”.
命题点 3 辨析算法框图的功能
例 5 如果执行如图的算法框图,输入正整数 N(N≥2)和实数 a1,a2,…,aN,输出 A,B,则
( )
A.A+B 为 a1,a2,…,aN 的和
B.A+B
2
为 a1,a2,…,aN 的算术平均数
C.A 和 B 分别是 a1,a2,…,aN 中最大的数和最小的数
D.A 和 B 分别是 a1,a2,…,aN 中最小的数和最大的数
答案 C
解析 不妨令 N=3,a150.
当 x=60 时,y=25+0.6×(60-50)=31.
所以输出 y 的值为 31.
19.算法框图中变量的取值
典例 执行如图所示的算法框图所表示的程序,则输出的 A 等于( )
A.2 047 B.2 049
C.1 023 D.1 025
错解展示
解析 将每次运算的 A 值用数列{an}表示,
将开始的 A=1 看作 a0,
则 a1=2a0+1=1,a2=2a1+1=3,…
∴a10=2a9+1=210-1=1 023.
答案 C
现场纠错
解析 本题计算的是递推数列 a0=1,
an+1=2an+1(n=0,1,2,…)的第 11 项,
{an+1}是首项为 2,公比为 2 的等比数列,
故 a10+1=211,
故 a10=2 047.
答案 A
纠错心得 算法框图对计数变量及求和变量取值时,要注意两个变量的先后顺序.
1.(2016·全国丙卷)执行如图所示的算法框图,如果输入的 a=4,b=6,那么输出的 n 等
于( )
A.3 B.4 C.5 D.6
答案 B
解析 第一次循环 a=6-4=2,b=6-2=4,a=4+2=6,s=6,n=1;
第二次循环 a=4-6=-2,b=4-(-2)=6,a=6-2=4,s=10,n=2;
第三次循环 a=6-4=2,b=6-2=4,a=4+2=6,s=16,n=3;
第四次循环 a=4-6=-2,b=4-(-2)=6,a=6-2=4,s=20,n=4,满足题意,结束
循环.
2.(2016·北京)执行如图所示的算法框图,输出的 S 值为( )
A.8 B.9
C.27 D.36
答案 B
解析 ①S=0+03=0,k=0+1=1,满足 k≤2;
②S=0+13=1,k=1+1=2,满足 k≤2;
③S=1+23=9,k=2+1=3,不满足 k≤2,输出 S=9.
3.如图,若依次输入的 x 分别为5π
6
、π
6
,相应输出的 y 分别为 y1、y2,则 y1、y2 的大小关系
是( )
A.y1=y2 B.y1>y2
C.y1cos 5π
6
成立,所以输出的 y1=sin5π
6
=1
2
;当输入的 x 为π
6
时,sinπ
6
>cos π
6
不成立,所以输出的 y2=cosπ
6
= 3
2
,所以 y1-1;第二次循环:i=3,S=lg1
3
+lg3
5
=lg1
5
=-lg 5>-1;第三次循环:i=5,S=lg1
5
+lg5
7
=lg1
7
=-lg 7>-1;第四次循环:i
=7,S=lg1
7
+lg7
9
=lg1
9
=-lg 9>-1;第五次循环:i=9,S=lg1
9
+lg 9
11
=lg 1
11
=-lg 11<
-1.故输出 i=9.
5.(2017·成都月考)定义某种运算 ,a b 的运算原理如图所示.设 S=1 x,x∈[-2,2],
则输出的 S 的最大值与最小值的差为( )
A.2 B.-1 C.4 D.3
答案 A
解析 由题意可得,S(x)=
|x|,-2≤x≤1,
1,13.1,满足条件,退出循环,输出 n
的值为 24.
8.以下给出了一个程序,根据该程序回答:
输入 x
If x<3 Then
y=2*x
Else
If x>3 Then
y=x*x-1
Else
y=2
End If
End If
输出 y
(1)若输入 4,则输出的结果是________;
(2)该程序的功能所表达的函数解析式为________.
答案 (1)15 (2)y=
2x,x<3,
2,x=3,
x2-1,x>3
解析 (1)x=4 不满足 x<3,∴y=x2-1=42-1=15.输出 15.
(2)当 x<3 时,y=2x,当 x>3 时,y=x2-1;否则,
x=3,y=2.
∴y=
2x,x<3,
2,x=3,
x2-1,x>3.
9.(2016·陕西西工大附中模拟)阅读如图所示算法框图,若输出的 n=5,则满足条件的整
数 p 共有________个.
答案 32
解析 模拟算法框图的运行过程,最后一次循环是
s=22+23+24=28,满足条件 s8
解析 由题意可知输出结果为 S=20,第 1 次循环,S=11,k=9,第 2 次循环,S=20,k=
8,此时 S 满足输出结果,退出循环,所以判断框中的条件为“k>8”.
13.(2016·长沙模拟)运行如图所示的算法框图,若输出的 y 值的范围是[0,10],则输入的
x 值的范围是________.
答案 [-7,9]
解析 该程序的功能是计算分段函数的值,
y=
3-x,x<-1,
x2,-1≤x≤1,
x+1,x>1.
当 x<-1 时,由 0≤3-x≤10 可得-7≤x<-1;
当-1≤x≤1 时,0≤x2≤10 恒成立;
当 x>1 时,由 0≤x+1≤10 可得 12 015
2 016
,则判断框中可以填入的关于 n 的判断条件是
________.(填序号)
①n≤2 015 ②n≤2 016
③n>2 015 ④n>2 016
答案 ②
解析 由题意得 f′(x)=3ax2+x,由 f′(-1)=0,
得 a=1
3
,∴f′(x)=x2+x,
即 g(x)= 1
x2+x
= 1
x x+1
=1
x
- 1
x+1
.
由算法框图可知 S=0+g(1)+g(2)+…+g(n)
=0+1-1
2
+1
2
-1
3
+…+1
n
- 1
n+1
=1- 1
n+1
,
由 1- 1
n+1
>2 015
2 016
,得 n>2 015.
故可填入②.