把握分寸,从读图开始
2018-11-22朱红姣
朱红姣
循环结构是算法知识的重点和难点,且高考命题以考查循环结构居多,可是很多同学在循环结构的学习和理解上感觉有些困难,关键在于循环体如何写,判断条件是什么,最后应输出什么等问题往往不是很清楚,尤其是判断框中的限制条件,这一分寸总是拿捏不稳,比如有这么一道题:求
从中也可以看出,对于循环体该如何写可能并不是大家最大的困难,而对判断条件的把握失当才是最致命的,总是差那么一点点,就会导致输出的结果不满足题意,因此循环结构中判断条件如何确定需要我们真正会“读”流程图,下面我们就通过更多的实例来帮助同学们“读”懂流程图,“定”好判断条件.
例1 如图2所示的程序框图输出的结果为1 023,则判断框应该填.
这道题容易出现“i≥9”的错误答案,这是由于我们没有读完循环体就作出判断导致的,遇到循环结构时,首先判断好循环体,而循环体是一个整体,只要进入到循环体中,那么一定要完成循环体中的所有步骤,有些同学看到循环体中某一步的输出值满足了,立即“忘乎所以”地结束循环,这样往往会导致判断条件出错.大家在做题时,可以每循环一次记录下s与i的变化值,当循环次数不多时,我们可将循环都计算完,再得出结果,而像例1等循环次数较多的情况,我们可以从中找出其规律,得出相应结论.
在流程图中,初值、判断条件、循环体和输出结果都是有一定联系的,做题时需要我们有通盘的考虑,尤其是当初值改变或循环体中执行框的位置发生改变时,若想得到相同的结果,那么判断条件一定要作出相应的调整,下面的例题中同学们就能体会到这一点了.
例3 图4(1)是计算2+4+6+…+100的一个算法,现将初值及循環体改变,在图4(2)中要得到同样的结果,请问图4(1)、图4(2)中的空缺处分别填什么?
解析 先分析图4(1),初值:s=2,i=2,第一次i=4,s=2+4,判断条件,当条件不满足时进入循环体;第二次:i=6,s=2+4+6:……
由此分析若要得到s一2+4+6+…+100,则此时:i =100,条件满足,退出循环,因此,判断条件可为i≥100或i>98,但不能写为i≥98.
再来分析图4(2),这时循环体里是先令s=s+i,因此初值:s=0,i=2比较合适;第一次:s =0+2,i=4;判断条件不满足时进入循环体,第二次:s=0+2+4,i=6;……,若要s=2+4+6+…+100,则此时i=102,条件满足,退出循环.因此,判断条件可为i≥102,此时你若还填i≥100就错了!
例4 下面是关于某一算式的三个流程图:请根据流程图5指出其算法功能,并分别指出流程图6、7判断框中的条件.
解析 我们易知,流程图5的算法功能是求1+3+5+…+101的值,在流程图6中,先计算了一次:s =O+l,而后判断条件,不满足时进入循环体,i=3,s=1+3;i=5,s =1+3+5;……;当s=1+3+5+…+101时,i=101,条件满足,所以判断条件可为i≥101.
流程图7中初值i=1.s=0.在条件满足时进入循环体,s =0+1,i=3;s=0+1+3,i=5;……;当s=1+3+5+…+101时,i =103,此时结束循环,条件不满足.因此判断条件为:i≤101(i<102或i<103均可).
总之,“读”流程图时,我们根据初值,在循环体中根据流程线一路“走”下来后,归纳推知变化规律,关键是把握好何时循环结束,退出循环,只要做到有始有终,就能拿捏好分寸,从而推出判断条件.