朱紅姣
循環(huán)結構是算法知識的重點和難點,且高考命題以考查循環(huán)結構居多,可是很多同學在循環(huán)結構的學習和理解上感覺有些困難,關鍵在于循環(huán)體如何寫,判斷條件是什么,最后應輸出什么等問題往往不是很清楚,尤其是判斷框中的限制條件,這一分寸總是拿捏不穩(wěn),比如有這么一道題:求
從中也可以看出,對于循環(huán)體該如何寫可能并不是大家最大的困難,而對判斷條件的把握失當才是最致命的,總是差那么一點點,就會導致輸出的結果不滿足題意,因此循環(huán)結構中判斷條件如何確定需要我們真正會“讀”流程圖,下面我們就通過更多的實例來幫助同學們“讀”懂流程圖,“定”好判斷條件.
例1 如圖2所示的程序框圖輸出的結果為1 023,則判斷框應該填.
這道題容易出現“i≥9”的錯誤答案,這是由于我們沒有讀完循環(huán)體就作出判斷導致的,遇到循環(huán)結構時,首先判斷好循環(huán)體,而循環(huán)體是一個整體,只要進入到循環(huán)體中,那么一定要完成循環(huán)體中的所有步驟,有些同學看到循環(huán)體中某一步的輸出值滿足了,立即“忘乎所以”地結束循環(huán),這樣往往會導致判斷條件出錯.大家在做題時,可以每循環(huán)一次記錄下s與i的變化值,當循環(huán)次數不多時,我們可將循環(huán)都計算完,再得出結果,而像例1等循環(huán)次數較多的情況,我們可以從中找出其規(guī)律,得出相應結論.
在流程圖中,初值、判斷條件、循環(huán)體和輸出結果都是有一定聯(lián)系的,做題時需要我們有通盤的考慮,尤其是當初值改變或循環(huán)體中執(zhí)行框的位置發(fā)生改變時,若想得到相同的結果,那么判斷條件一定要作出相應的調整,下面的例題中同學們就能體會到這一點了.
例3 圖4(1)是計算2+4+6+…+100的一個算法,現將初值及循環(huán)體改變,在圖4(2)中要得到同樣的結果,請問圖4(1)、圖4(2)中的空缺處分別填什么?
解析 先分析圖4(1),初值:s=2,i=2,第一次i=4,s=2+4,判斷條件,當條件不滿足時進入循環(huán)體;第二次:i=6,s=2+4+6:……
由此分析若要得到s一2+4+6+…+100,則此時:i =100,條件滿足,退出循環(huán),因此,判斷條件可為i≥100或i>98,但不能寫為i≥98.
再來分析圖4(2),這時循環(huán)體里是先令s=s+i,因此初值:s=0,i=2比較合適;第一次:s =0+2,i=4;判斷條件不滿足時進入循環(huán)體,第二次:s=0+2+4,i=6;……,若要s=2+4+6+…+100,則此時i=102,條件滿足,退出循環(huán).因此,判斷條件可為i≥102,此時你若還填i≥100就錯了!
例4 下面是關于某一算式的三個流程圖:請根據流程圖5指出其算法功能,并分別指出流程圖6、7判斷框中的條件.
解析 我們易知,流程圖5的算法功能是求1+3+5+…+101的值,在流程圖6中,先計算了一次:s =O+l,而后判斷條件,不滿足時進入循環(huán)體,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.在條件滿足時進入循環(huán)體,s =0+1,i=3;s=0+1+3,i=5;……;當s=1+3+5+…+101時,i =103,此時結束循環(huán),條件不滿足.因此判斷條件為:i≤101(i<102或i<103均可).
總之,“讀”流程圖時,我們根據初值,在循環(huán)體中根據流程線一路“走”下來后,歸納推知變化規(guī)律,關鍵是把握好何時循環(huán)結束,退出循環(huán),只要做到有始有終,就能拿捏好分寸,從而推出判斷條件.