文档内容
第 1 节 算法与程序框图
考试要求 1.了解算法的含义,了解算法的思想;2.理解程序框图的三种基本逻
辑结构:顺序结构、条件结构、循环结构.
1.算法
(1)算法通常是指按照一定规则解决某一类问题的明确和有限的步骤.
(2)应用:算法通常可以编成计算机程序,让计算机执行并解决问题.
2.程序框图
定义:程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的
图形.
3.三种基本逻辑结构
名称
顺序结构 条件结构 循环结构
内容
由若干个按先后顺 从某处开始,按照
算法的流程根据条
序执行的步骤组 一定的条件反复执
件是否成立而选择
定义 成,这是任何一个 行某些步骤的情
执行不同的流向的
算法都离不开的基 况,反复执行的步
结构形式
本结构 骤称为循环体程序框图
1.条件结构无论判断条件是否成立,只能执行“是”分支或“否”分支二者之一,
不能同时执行,也不能都不执行.
2.直到型循环是“先循环,后判断,条件满足时终止循环”;当型循环则是“先
判断,后循环,条件满足时执行循环”,两者的判断框内的条件表述在解决同一
问题时是不同的,它们恰好相反.
1.思考辨析(在括号内打“√”或“×”)
(1)一个程序框图一定包含顺序结构,但不一定包含条件结构和循环结构.( )
(2)条件结构的出口有两个,但在执行时,只有一个出口是有效的.( )
(3)输入框只能紧接开始框,输出框只能紧接结束框.( )
(4)程序框图中的图形符号可以由个人来确定.( )
答案 (1)√ (2)√ (3)× (4)×
2.(易错题)执行如图所示的程序框图,若输出k的值为8,则判断框内可填入的条
件是( )A.s≤?
B.s≤?
C.s≤?
D.s≤?
答案 C
解析 由s=0,k=0满足条件,则k=2,s=,满足条件;
k=4,s=+=,满足条件;
k=6,s=+=,满足条件;
k=8,s=+=,不满足条件,输出k=8,
所以判断框内可填“s≤?”.
3.(2020·全国Ⅱ卷)执行如图所示的程序框图,若输入的k=0,a=0,则输出的k
为( )
A.2 B.3 C.4 D.5
答案 C解析 程序框图运行如下:
a=2×0+1=1<10,k=1;
a=2×1+1=3<10,k=2;
a=2×3+1=7<10,k=3;
a=2×7+1=15>10,k=4.
此时输出k=4,程序结束.
4.(2022·合肥质检)秦九韶是我国南宋时期的数学家,他在所著的《数书九算》中
提出的多项式求值的算法,至今仍是比较先进的算法.如图是应用秦九韶算法的
一个程序框图.执行该程序框图,若输入x=a,n=2,输出s=26,则输入的实数
a的值为( )
A.-4或-3
B.-3或4
C.-4或3
D.3或4
答案 C
解析 初始条件k=0,s=0,x=a,n=2,
依次执行如下:s=0·a+2=2,k=1,
s=2a+2,k=2,s=(2a+2)a+2,k=3,退出循环,
所以(2a+2)a+2=26 a=-4或a=3,故选C.
5.(2020·江苏卷)如图是一个算法流程图.若输出 y 的值为-2,则输入 x 的值是
⇒________.
答案 -3
解析 由算法流程图知该程序是求函数y=的值.
当x>0时,令2x=-2,无解;
当x≤0时,令x+1=-2,解得x=-3.
故输入x的值是-3.
6.(易错题)执行如图所示的程序框图,若输入的a,b的值分别为0和9,则输出
的i的值为________.
答案 3
解析 第1次循环:i=1,a=1,b=8,ab,输出i的值为3.
考点一 顺序结构与条件结构
1.阅读如图所示程序框图.若输入x值为9,则输出的y的值为( )A.8 B.3 C.2 D.1
答案 B
解析 a=92-1=80,b=80÷10=8,y=log 8=3.
2
2.执行下面的程序框图,当输入的 x值为4时,输出的y的值为2,则空白判断
框中的条件可能为( )
A.x>3?
B.x>4?
C.x≤4?
D.x≤5?
答案 B
解析 输入x=4,若满足条件,则y=4+2=6,不符合题意;若不满足条件,
则y=log 4=2,符合题意;结合选项可知应填x>4?.
2
3.给出一个如图所示的程序框图,若要使输入的x的值与输出的y的值相等,则
x的可能值的个数为( )A.1 B.2 C.3 D.4
答案 C
解析 由已知可知,该程序框图的作用是计算并输出分段函数y=的值.
因为输入的x值与输出的y值相等,所以当x≤2时,令x=x2,解得x=0或x=
1;当25时,令x=,解得 x=±1(舍
去).故满足条件的x值共有3个.故选C.
感悟提升 应用顺序结构与条件结构的注意点
(1)顺序结构:顺序结构是最简单的算法结构,语句与语句之间、框与框之间是
按从上到下的顺序进行的.
(2)条件结构:利用条件结构解决算法问题时,重点是判断框,判断框内的条件
不同,对应的下一程序框中的内容和操作要相应地进行变化,故要重点分析判断
框内的条件是否得到满足.
提醒 条件结构的运用与数学的分类讨论有关.设计算法时,哪一步要分类讨论,
哪一步就需要用条件结构.
考点二 循环结构
角度1 由程序框图求输出结果
例1 (2022·河南顶级名校联考)图①是某学习小组学生数学考试成绩的茎叶图,1
号到16号同学的成绩依次为A ,A ,…,A ,图②是统计茎叶图中成绩在一定
1 2 16
范围内的学生人数的程序框图,那么该程序框图输出的结果是( )A.6 B.10 C.91 D.92
答案 B
解析 由程序框图可得,该算法的功能是统计这 16个同学中数学考试成绩不低
于90分的学生人数,从茎叶图中可知,成绩不低于90分的学生人数为10,故选
B.
角度2 完善程序框图
例2 (2022·吕梁模拟)为了计算S=3+33+333+3 333+33 333,设计了如图所示
的程序框图,则①和②处的框内可以分别填入( )
A.S=S+3×10i-1和i=i+2
B.S=S+(10i-1)÷3和i=i+1
C.S=S+3×10i和i=i+3
D.S=S+(10i-1-1)÷3和i=i+1
答案 B解析 i为计数变量,由i>5?,
可得执行了5次运算,且是逐步进行的,
所以i=i+1,第一次循环时S=3,可排除D,故选B.
感悟提升 1.已知程序框图,求输出的结果,可按程序框图的流程依次执行,最
后得出结果.
2.完善程序框图问题,应结合初始条件和输出结果,分析控制循环的变量应满足
的条件或累加、累乘变量的表达式.
训练 (1)(2022·昆明诊断)如图所示的程序框图的算法思路源于欧几里得在公元前
300年左右提出的“辗转相除法”,其中[x]表示不超过x的最大整数.执行该程序
框图,若输入的a,b分别为196和42,则输出的b=( )
A.2 B.7 C.14 D.28
(2)(2021·九江模拟)公元前3世纪,古希腊数学家阿基米德研究过自然数的平方
和,并得到公式 12+22+32+…+n2=,执行如图所示的程序.若输出的结果为
7,则判断框 中的实数k的取值范围是( )
A.[91,140) B.(91,140]
C.[140,204) D.(140,204]
答案 (1)C (2)B
解析 (1)第一次循环:a=196,b=42,
r=196-42=196-42×4=196-168=28≠0,不满足r=0,则a=42,b=28;
r=42-28=42-28×1=14≠0,
不满足r=0,则a=28,b=14;
r=28-14=28-14×2=0,
满足r=0,结束循环,输出b=14,故选C.
(2)依题意得解得 91N.故输出的X=.4.(2021·安徽江南十校质检)执行下面的程序框图,则输出S的值为( )
A.- B. C. D.
答案 D
解析 由程序框图可知S=×(1+2+3+4+5)-=,故选D.
5.根据下列算法语句,当输入x为60时,输出y的值为( )INPUT x
IF x<=50 THEN
y=0.5*x
ELSE
y=25+0.6*(x-50)
END IF
PRINT y
END
A.25 B.30 C.31 D.61
答案 C
解析 该语句为分段函数,
y=
当x=60时,y=25+0.6×(60-50)=31,故选C.
6.如图是求的程序框图,图中空白框中应填入( )
A.A=
B.A=2+
C.A=
D.A=1+
答案 A
解析 对于选项A,第一次循环,A=;
第二次循环,A=,
此时k=3,不满足k≤2,输出A=的值.
故A正确;经验证选项B,C,D均不符合题意.故选A.
7.某程序框图如图所示,若该程序运行后输出的值是,则整数a的值为( )
A.6 B.7 C.8 D.9
答案 A
解析 依题意,得
S=1+1-+-+…+-
=2-,
令2-=,得k=6,∴a=6.故选A.
8.(2021·南昌模拟)如图,将程序框图输出的y看成输入的x的函数,得到函数y
=f(x),则y=f(x)的图象( )
A.关于直线x=1对称
B.关于直线x=-1对称
C.关于y轴对称
D.关于点(0,0)对称
答案 D
解析 根据程序框图,可知:该程序的作用是计算分段函数 y=f(x)=的值,易证函数y=f(x)=是奇函数,所以函数y=f(x)的图象关于点(0,0)对称.
9.(2020·全国Ⅰ卷改编)执行如图所示的程序框图,则输出的n=________.
答案 21
解析 由程序框图可知S=1+3+5+…+(2m-1)=m2(m∈N*),
由S>100,得m>10(m∈N*),
故当m=11时循环结束,输出的值为n=2m-1=21.
10.(2022·河南名校联考)执行如图所示的程序框图,输出的S=________.
答案 17
解析 按照程序框图依次执行,S=1,n=0,T=0;
S=9,n=2,T=0+4=4;
S=17,n=4,T=4+16=20>S,退出循环,输出S=17.
11.如图是一个算法的程序框图,则输出的n的值是________.答案 4
解析 计算如下:n=1,S=0,不满足条件,
S=,n=2,不满足条件;
S=+,n=3,不满足条件;
S=++1,n=4,满足条件,
故输出n=4.
12.某程序框图如图所示,若判断框内是k≥n?,且n∈N时,输出的S=57,则
判断框内的n应为________.
答案 5
解析 程序在运行过程中各值变化如下表,
k S 是否继续循环
循环前 1 1
第一次循环 2 4 是
第二次循环 3 11 是
第三次循环 4 26 是
第四次循环 5 57 否
故退出循环的条件应为k≥5,则输出的S=57时,判断框内的n应为5.13.(2021·汉中模拟)1927年德国汉堡大学的学生考拉兹提出一个猜想:对于任意
一个正整数,如果它是奇数,对它乘 3加1,如果它是偶数,对它除以 2,这样
循环,最终结果都能得到1.有的数学家认为“该猜想任何程度的解决都是现代数
学的一大进步,将开辟全新的领域”,这大概与其蕴含的“奇偶归一”思想有关.
如图是根据考拉兹猜想设计的一个程序框图,则输出i的值为( )
A.8 B.7 C.6 D.5
答案 A
解析 a=3时,不满足a=1,满足a是奇数,a=10,i=2;
a=10时,不满足a=1,不满足a是奇数,a=5,i=3;
a=5时,不满足a=1,满足a是奇数,a=16,i=4;
a=16时,不满足a=1,不满足a是奇数,a=8,i=5;
a=8时,不满足a=1,不满足a是奇数,a=4,i=6;
a=4时,不满足a=1,不满足a是奇数,a=2,i=7;
a=2时,不满足a=1,不满足a是奇数,a=1,i=8;
a=1时,满足a=1,输出i=8,故选A.
14.执行如图所示的程序框图,设所有输出数据构成的集合为 A,若从集合A中
任取一个元素a,则满足函数f(x)=2x2-ax+2 021在区间[2,+∞)内单调递增
的概率为( )
A. B. C. D.答案 B
解析 由框图可知A={11,9,7,5,3,1},其中基本事件的总数为6,
设“函数f(x)=2x2-ax+2 021在区间[2,+∞)内单调递增”为事件E,则事件E
发生时,≤2,即a≤8,
故使事件E发生的a的值为1,3,5,7,共4个,
故由古典概型概率公式,可得P(E)==.
15.MOD(m,n)表示m除以n的余数,例如MOD(8,3)=2.如图是某个算法的程
序框图,若输入m的值为48,则输出i的值为________.
答案 9
解析 由程序框图可知,该程序框图计算输入值m除去自身的约数的个数.
48的非自身的约数有1,2,3,4,6,8,12,16,24,共9个,易知输出i的值
为9.
16.我国南北朝时期的数学家张丘建是世界数学史上解决不定方程的第一人,他
在《张丘建算经》中给出一个解不定方程的百鸡问题,问题如下:鸡翁一,值钱
五,鸡母一,值钱三,鸡雏三,值钱一.百钱买百鸡,问鸡翁母雏各几何?用代
数方法表述为:设鸡翁、鸡母、鸡雏的数量分别为 x,y,z,则鸡翁、鸡母、鸡
雏的数量即为方程组的解.其解题过程可用程序框图表示,如图所示,则程序框
图中正整数m的值为______.答案 4
解析 由得y=25-x,
故x必为4的倍数,
当x=4t时,y=25-7t,
由y=25-7t>0,得t的最大值为3,
故判断框应填入的是“t<4?”,即m=4.