- 929.00 KB
- 2021-06-11 发布
- 1、本文档由用户上传,淘文库整理发布,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,请立即联系网站客服。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细阅读内容确认后进行付费下载。
- 网站客服QQ:403074932
第4节 算法与程序框图
最新考纲 1.了解算法的含义,了解算法的思想;2.理解程序框图的三种基本逻辑结构:顺序、条件分支、循环;3.了解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义;4.了解流程图、结构图及其在实际中的应用.
知 识 梳 理
1.程序框图
(1)通常用一些通用图形符号构成一张图来表示算法.这种图称做程序框图(简称框图).
(2)基本的程序框图有起、止框、输入、输出框、处理框、判断框、流程线等图形符号和连接线构成.
2.三种基本逻辑结构
名称
内容
顺序结构
条件分支结构
循环结构
定义
最简单的算法结构,语句与语句之间,框与框之间按从上到下的顺序进行
依据指定条件选择执行不同指令的控制结构
根据指定条件决定是否重复执行一条或多条指令的控制结构
程序框图
3.基本算法语句
(1)输入、输出、赋值语句的格式与功能
语句
一般格式
功能
输入语句
变量名=input(“提示内容”)
输入信息
输出语句
print( io(2),a,b,c)
输出常量、变量的值和系统信息
赋值语句
变量名=表达式
将表达式的值赋给变量
(2)条件语句的格式及框图
a.if语句最简单的格式及对应的框图
b.if语句的一般格式及对应的框图
(3)循环语句的格式
a.for语句
b.while语句
[常用结论与微点提醒]
1.赋值号左边只能是变量(不是表达式),在一个赋值语句中只能给一个变量赋值.
2.注意条件分支结构与循环结构的联系:循环结构有重复性,条件分支结构具有选择性没有重复性,并且循环结构中必定包含一个条件分支结构,用于确定何时终止循环体.
诊 断 自 测
1.思考辨析(在括号内打“√”或“×”)
(1)程序框图中的图形符号可以由个人来确定.( )
(2)一个程序框图一定包含顺序结构,但不一定包含条件结构和循环结构.( )
(3)在算法语句中,X=X+1是错误的.( )
(4)条件分支结构的出口有两个,但在执行时,只有一个出口是有效的.( )
答案 (1)× (2)√ (3)× (4)√
2.(2017·天津卷)阅读下面的程序框图,运行相应的程序,若输入N的值为19,则输出N的值为( )
A.0 B.1 C.2 D.3
解析 输入N=19,
第一次循环,19不能被3整除,N=19-1=18,18>3;
第二次循环,18能被3整除,N==6,6>3;
第三次循环,6能被3整除,N==2,2<3,满足循环条件,退出循环,输出N=2.
答案 C
3.(2017·沈阳联考)下列赋值能使y的值为4的是( )
A.y-2=6 B.2 3-2=y
C.4=y D.y=2 3-2
解析 赋值时把“=”右边的值赋给左边的变量.
答案 D
4.(2017·山东卷)执行下面的程序框图,当输入的x值为4时,输出的y的值为2,则空白判断框中的条件可能为( )
A.x>3 B.x>4
C.x≤4 D.x≤5
解析 输入x=4,若满足条件,则y=4+2=6,不符合题意;若不满足条件,则y=log24=2,符合题意,结合选项可知应填x>4.
答案 B
5.(教材习题改编)根据给出的程序框图,计算f(-1)+f(2)= .
解析 由程序框图,f(-1)=-4,f(2)=22=4.
∴f(-1)+f(2)=-4+4=0.
答案 0
考点一 顺序结构与条件分支结构
【例1】 (1)阅读如图所示程序框图.若输入x为9,则输出的y的值为( )
A.8 B.3 C.2 D.1
(2)如图所示的程序框图的算法思路 于我国古代数学名著《九章算术》中的“更相减损术”.执行该程序框图,若输入的a,b分别为14,18,则输出的a=( )
A.0 B.2 C.4 D.14
解析 (1)由题意可得a=92-1=80,b=80÷10=8,y=log28=3.
(2)由a=14,b=18,ab,则a=14-4=10;由a>b,则a=10-4=6;由a>b,则a=6-4=2;由a1 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
解析 因为题目要求的是“满足3n-2n>1 000的最小偶数n”,所以n的叠加值为2,所以内填入“n=n+2”.由程序框图知,当内的条件不满足时,输出n,所以内填入“A≤1 000”.
答案 D
命题角度3 辨析程序框图的功能
【例2-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)]+(20+21+22+…+2n)的值
解析 初始值k=1,S=0,第1次进入循环体时,S=1+20,k=2;第2次进入循环体时,S=1+20+2+21,k=3;第3次进入循环体时,S=1+20+2+21+3+22,k=4;…;给定正整数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)对于辨析程序框图功能问题,可将程序执行几次,即可根据结果作出判断.
【训练2】 (1)(2017·全国Ⅲ卷)执行下面的程序框图,为使输出S的值小于91,则输入的正整数N的最小值为( )
A.5 B.4 C.3 D.2
(2)(2018·烟台调研)如图,程序输出的结果S=132,则判断框中应填( )
A.i≥10 B.i≥11 C.i≤11 D.i≥12
解析 (1)已知t=1,M=100,S=0,进入循环:
第一次进入循环:S=0+100=100>91,M=-=-10,t=t+1=2100,停止循环,
则最后输出的x的值是231.
答案 D
3.(2018·湖南长郡中学、衡阳八中等十三校联考)如图给出的是计算1+++…+的值的一个程序框图,则判断框内应填入的条件是( )
A.i≤1 009 B.i>1 009
C.i≤1 010 D.i>1 010
解析 开始i=1,S=0;第1次循环:S=0+1,i=2;
第2次循环:S=1+,i=3;
第3次循环:S=1++,i=4;
……
第1 009次循环:S=1+++…+,i=1 010,退出循环,其中判断框内应填入的条件是i≤1 009.
答案 A
4.(2018·莆田质检)我国古代数学著作《孙子算经》中有如下问题:“今有方物一束,外周一匝有三十二枚,问积几何?”设每层外周枚数为a,如图是解决该问题的程序框图,则输出的结果为( )
A.121 B.81
C.74 D.49
解析 a=1,S=0,n=1,第一次循环:S=1,n=2,a=8;
第二次循环:S=9,n=3,a=16;
第三次循环:S=25,n=4,a=24;
第四次循环:S=49,n=5,a=32;
第五次循环:S=81,n=6,a=40>32,输出S=81.
答案 B
5.(2017·全国Ⅱ卷)执行下面的程序框图,如果输入的a=-1,则输出的S=( )
A.2 B.3
C.4 D.5
解析 阅读程序框图,初始化数值a=-1,K=1,S=0,
循环结果执行如下:
第一次:S=0-1=-1,a=1,K=2;
第二次:S=-1+2=1,a=-1,K=3;
第三次:S=1-3=-2,a=1,K=4;
第四次:S=-2+4=2,a=-1,K=5;
第五次:S=2-5=-3,a=1,K=6;
第六次:S=-3+6=3,a=-1,K=7;
结束循环,输出S=3.
答案 B
6.根据下图算法语句,当输入x为60时,输出y的值为( )
x=input(“x=”);
if x<=50
y=0.5 x;
else
y=25+0.6 (x-50);
end
print( io(2),y);
A.25 B.30
C.31 D.61
解析 通过阅读理解知,算法语句是一个分段函数y=f(x)=
∴y=f(60)=25+0.6×(60-50)=31.
答案 C
7.(2018·长春质检)运行如图所示的程序框图,则输出结果为( )
A.1 008 B.1 009
C.2 016 D.2 017
解析 由已知,得S=0-1+2-3+4+…-2 015+2 016=(-1+2)+(-3+4)+…+(-2 015+2 016)=1 008.
答案 A
8.(2018·石家庄质检)执行下面的程序框图,则输出K的值为( )
A.98 B.99 C.100 D.101
解析 由题意,知S=lg+lg+…+lg=lg=lg(K+1),令lg(K+1)≥2,得K+1≥102,即K≥99,而当K=99时,S=2,故输出K的值为99.
答案 B
二、填空题
9.执行下面的程序框图,若输入的x的值为1,则输出的y的值是 .
解析 当x=1时,1<2,则x=1+1=2;当x=2时,不满足x<2,则y=3×22+1=13.
答案 13
10.(2018·广州五校联考)如图所示的程序框图,其输出结果为 .
解析 由程序框图,得S=++…+=++…+=1-=,
故输出的结果为.
答案
11.已知实数x∈[2,30],执行如图所示的程序框图,则输出的x不小于103的概率为 .
解析 由程序框图可知,经过3次循环跳出,设输入的初始值为x=x0,则输出的x=2[2(2x0+1)+1]+1≥103,所以8x0≥96,即x0≥12,故输出的x不小于103的概率为P===.
答案
12.(2018·资阳诊断)MOD(m,n)表示m除以n的余数,例如MOD(8,3)=2.如图是某个算法的程序框图,若输入m的值为48,则输出i的值为 .
解析 由程序框图可知,该程序框图计算输入值m除去自身的约数的个数.48的非自身的约数有1,2,3,4,6,8,12,16,24,共9个,易知输出i的值为9.
答案 9
能力提升题组
(建议用时:15分钟)
13.(2017·山东卷)执行两次右图所示的程序框图,若第一次输入的x的值为7,第二次输入的x的值为9,则第一次、第二次输出的a的值分别为( )
A.0,0 B.1,1
C.0,1 D.1,0
解析 第一次输入x的值为7,
流程如下:b2=22<7,又7不能被2整除,所以b=3,此时b2=9>7=x,所以终止循环,a=1,则输出a=1;
第二次输入x的值为9,流程如下:b2=22<9,又9不能被2整除,所以b=3,此时b2=9>x=9不成立,又9能被3整除,
所以终止循环,a=0,所以输出a=0.
答案 D
14.如图(1)是某县参加2017年高考的学生身高条形统计图,从左到右的各条形表示的学生人数依次记为A1,A2,…,A10(如A2表示身高(单位:cm)在[150,155)内的学生人数).图(2)是统计图(1)中身高在一定范围内学生人数的一个程序框图.现要统计身高在160 180 cm(含160 cm,不含180 cm)的学生人数,则在流程图中的判断框内应填写( )
A.i<6 B.i<7 C.i<8 D.i<9
解析 统计身高在160 180 cm的学生人数,则求A4+A5+A6+A7的值.当4≤i≤7时,符合要求.
答案 C
15.执行如图所示的程序框图,如果输入的t=50,则输出的n= .
解析 第一次运行后S=2,a=3,n=1;
第二次运行后S=5,a=5,n=2;
第三次运行后S=10,a=9,n=3;
第四次运行后S=19,a=17,n=4;
第五次运行后S=36,a=33,n=5;
第六次运行后S=69,a=65,n=6;
此时不满足S0,当f(x)=cos x,x∈[-1,1]时满足.然后进入第二个判断框,需要解不等式f′(x)=-sin x≤0,即0≤x≤1.故输出区间为[0,1].
答案 [0,1]