算法初步常考题型

2018-01-11 06:25河南省商丘市第一高级中学张志华何茂红
关键词:程序框图框图题型

■河南省商丘市第一高级中学 张志华 何茂红

算法初步常考题型

■河南省商丘市第一高级中学 张志华 何茂红

在高考中,算法初步章节知识仍为考查热点,内容以程序框图为主。从形式上看,以选择题和填空题为主,或以实际问题为背景,侧重知识应用能力的考查,要求学生具备一定的逻辑推理能力。

从近几年高考题来看,在三种基本逻辑结构中,循环结构与条件结构是考查的热点。程序框图是算法的直观表示,是算法转化为程序的媒介,故程序框图在算法中的地位举足轻重,仍是高考考查的重点。程序框图及相应的逻辑结构:顺序、条件、循环结构,其中循环结构是高考考查的重点。在复习中应加强训练,过好“识图、用图、作图”这三关。

题型一:求输入值问题

例1 执行图1的程序框图,为了使输出S的值小于9 1,则输入的正整数N的最小值为( )。

A.5 B.4

C.3 D.2

分析:解决程序框图问题要注意几个常用变量。(1)计数变量:用来记录某个事件发生的次数,如i=i+1;(2)累加变量:用来计算数据之和,如S=S+i;(3)累乘变量:用来计算数据之积,如p=p×i。而在处理循环结构的框图问题时,关键是理解并认清终止循环结构的条件及循环次数。

解:看清流程图,程序运行如下。

首先,初始化数值:t=1,M=1 0 0,S=0;然后,进入循环体,此时应满足t≤N,执行循环语句,S=S+M=1 0 0,M==-1 0,t=t+1=2;此时应满足t≤N,执行循环语句,S=S+M=9 0,=1,t=t+1=3;此时不满足S<9 1,可以跳出循环。则输入的正整数N的最小值为2。故选D。

总结:看到求输入的值,想到利用程序框图得出其算法功能,找到输出值与输入值之间的关系,逆推得输入值。看到循环结构,想到循环体的构成;看到判断框想到程序什么时候开始和终止。应用循环结构应明确三个问题:(1)确定循环变量和初始值。(2)确定循环体,即算法中反复执行的部分。(3)确定循环的终止条件。

题型二:求输出值问题

例2 执行图2所示的程序框图,如果输入的a=-1,则输出的S=( )。

据介绍,6月份,哈国家磷肥厂宣布投资80亿坚戈(约合2200万美元)用于现代化改造,预计到2020年扩大磷肥产量至50万吨,远期目标为100万吨。今年1~8月,该厂的产品主要销往美国、中国、阿富汗、俄罗斯、乌克兰、塔吉克斯坦和乌兹别克斯坦。同时,哈产氮肥已开始向阿根廷、罗马尼亚、捷克、保加利亚和伊朗出口。

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;

故选B。

总结:解决这类问题时,首先,要明确算法框图中的顺序结构、条件结构和循环结构;其次,要识别运行算法框图,理解框图解决的问题;最后,按照框图的要求一步一步进行循环,直到跳出循环体输出结果,完成解答。近年框图问题考查很活,常把框图的考查与函数和数列等知识相结合。一定要注意计算时不能出现重复和遗漏,切勿对判断框的条件理解出错,从而错误判断循环次数,弄错循环变量。

题型三:填充空白框问题

例3 图3所示的程序框图是为了求出满足3n-2n>10 0 0的最小偶数n,那么在◇和▭两个空白框中,可以分别填入( )。

A.A>10 0 0和n=n+1 B.A>10 0 0和n=n+2 C.A≤10 0 0和n=n+1 D.A≤10 0 0和n=n+2

解析:由题意,因为3n-2n>10 0 0,且框图中在“否”时输出,所以判定框内不能输入A>10 0 0,故填A≤10 0 0。又要求n为偶数且初始值为0,所以矩形框内应填n=n+2。故选D。

图2

总结:解决此类问题的关键是读懂程序框图,明确顺序结构、条件结构、循环结构的真正含义。本题巧妙地设置了两个空格需要填写,所以需要抓住循环的重点,偶数该如何增量,判断框内如何进行判断可以根据选项排除。识别程序框图常出现的错误有:(1)读不懂程序框图的逻辑结构,混淆处理框与输入框的区别;(2)不能准确把握判断框中的条件,对条件结构中的流向确定不准确。

图3

题型四:比较大小问题

例4 如果执行图4所示的程序框图,输入正整数N(N≥2)和实数a1,a2,…,aN,输出 A,B,则( )。

A.A+B为a1,a2,…,aN的和

1a2,…,aN的算术平均数

图4

C.A和B分别是a1,a2,…,aN中最大的数和最小的数

D.A和B分别是a1,a2,…,aN中最小的数和最大的数

解析:根据程序框图可知,这是一个数据大小比较的程序。当x>A时,有x=A,即A表示a1,a2,…,aN中最大的数;同理,B表示a1,a2,…,aN中最小的数。故选C。

总结:数的大小排序在程序框图中要注意赋值号“=”的含义,它不是数学中的等于号,而是表示把右边的数值给左边的数,即对数据进行位置的变换,这是解决这类题型的关键所在。常出现的错误有:(1)对循环体内赋值语句的含义弄不清楚;(2)对判断框内的终止条件理解出错。

(责任编辑 王福华)

猜你喜欢
程序框图框图题型
离散型随机变量常考题型及解法
巧妙构造函数 破解三类题型
“顺势而下”破解程序框图
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
算法与程序框图常考类型
电路图2017年凯迪拉克XT5
程序框图问题的精彩交汇
一次函数中的常见题型
算法框图的补全
随机抽样题型“晒一晒”