許薇嫣
[摘? ?要]分析幾道算法初步典型例題,以幫助學(xué)生有效把握算法初步的考點,從而提高學(xué)生分析與解決這類問題的能力.
[關(guān)鍵詞]算法初步;考點;框圖
[中圖分類號]? ? G633.6? ? ? ? [文獻(xiàn)標(biāo)識碼]? ? A? ? ? ? [文章編號]? ? 1674-6058(2019)35-0001-02
算法框圖是新課標(biāo)的新增內(nèi)容,也是新課標(biāo)高考的必考考點.在高考中,一般以選擇題或填空題的形式出現(xiàn),主要考查算法初步的三種結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu).試題往往以框圖的形式給出,難度不大,考查熱點主要有條件結(jié)構(gòu)框圖、循環(huán)結(jié)構(gòu)框圖、框圖中的逆向求解問題和數(shù)學(xué)傳統(tǒng)文化在程序框圖中的應(yīng)用.
一、條件結(jié)構(gòu)框圖
高考對條件結(jié)構(gòu)框圖的考查主要有兩種:一是直接寫出條件程序框圖輸出的結(jié)果;二是填寫條件程序框圖中缺省的部分.試題出現(xiàn)在選擇題與填空題中,難度中等.
[例1]當(dāng)輸入的[t∈[-1,3]],那么執(zhí)行如圖1的程序框圖中的程序后,輸出的數(shù)值s屬于的區(qū)間是? ? ? ? ? ? ? ? ? ? ?.
解析:這個程序框圖的功能是求分段函數(shù):s=[3t,-1≤x<1 ,4t-t2,1≤t≤3]的函數(shù)值.當(dāng)t∈[-1,1)時,s∈[-3,3);當(dāng)t∈[1,3]時,s=[4t-t2]=4-[(t-2)2]∈[3,4],故s∈[-3,4].
點評:對于這類問題需注意兩個關(guān)鍵點:一是明確其功能,根據(jù)“是”的分支成立進(jìn)行判斷;二是對于條件結(jié)構(gòu),分支再多,也只能選擇一個執(zhí)行,具有唯一性,不可同時執(zhí)行兩個或兩個以上,也不可不執(zhí)行.
二、循環(huán)結(jié)構(gòu)框圖
總覽高考命題,對算法初步的考查,素來以循環(huán)結(jié)構(gòu)框圖為主,將它與其他數(shù)學(xué)知識綜合在一起,如函數(shù)、數(shù)列和不等式等,尤其是數(shù)列問題中的累加法、累乘法、裂項求和等,都是命題的熱點.解答這類問題要明確表示累計的變量,其次要注意循環(huán)到哪一步結(jié)束,尤其是要注意先執(zhí)行后判斷還是先判斷后執(zhí)行,以免造成執(zhí)行程序不完整或執(zhí)行過頭.
[例2](1)已知如圖2所示的程序框圖(未完成),若當(dāng)箭頭[a]指向①時,輸出的結(jié)果為[S]=[m];當(dāng)箭頭[a]指向②時,輸出的結(jié)果為[S]=[n],則[m]+[n]的值為? ? ? ? ? ? ? ?.
解析:當(dāng)箭頭[a]指向①時,第1次循環(huán),S=1,i=2;第2次循環(huán),S=2,i=3;第3次循環(huán),S=3,i=4;第4次循環(huán),S=4,i=5;第5次循環(huán),S=5,i=6,不滿足i≤5,退出循環(huán),即輸出的結(jié)果為S=5,即m=5.當(dāng)箭頭[a]指向②時,第1次循環(huán),S=1,i=2;第2次循環(huán),S=3,i=3;第3次循環(huán),S=6,i=4;第4次循環(huán),S=10,i=5;第5次循環(huán),S=15,i=6,不滿足i≤5,退出循環(huán),即輸出的結(jié)果為S=15,即n=15;所以[m+n]=20.
(2)按如下程序框圖(如圖3),若輸出結(jié)果為273,則判斷框內(nèi)“?”處應(yīng)補充的條件為? ? ? ? ? .
圖3
解析:依據(jù)程序框圖的功能:當(dāng)[i=1]時,[S=0+31=3];當(dāng)[i=3]時,[S=3+33=30];當(dāng)[i=5]時,[S=30+35=273],所以[i=7].故本題填的答案為[i≥7].
點評:對于循環(huán)結(jié)構(gòu),在清楚循環(huán)體、變量的初始條件和循環(huán)的終止條件分別是什么的基礎(chǔ)上,對于寫出直接輸出結(jié)果的問題,一般可模擬電腦的運行步驟,列出每一步的運行結(jié)果:(1)當(dāng)循環(huán)次數(shù)較少時,列出每一步的運行結(jié)果,直至程序結(jié)束;(2)當(dāng)循環(huán)次數(shù)較多時,逐一列出前面的若干步驟,觀察、歸納規(guī)律,從而得出答案.對于填寫框圖缺省部分,一般可采用兩種方法:一是先填后驗,也就是說先填假設(shè)成立的條件,再通過執(zhí)行程序來判斷所填寫的內(nèi)容是否正確;二是執(zhí)果索因,步步回溯,找到所填寫的條件.
三、框圖中的逆向求解問題
讀懂程序框圖的功能,求出框圖中某個字母的值或取值范圍,也是一類不可忽視的算法問題,該類問題出現(xiàn)在填空題或選擇題中,難度一般.
[例3]某程序框圖如圖4所示,該程序運行后輸出的值是[95],則().
A. [a]=4? ? ? ? ? ?B. [a]=5
C. [a]=6? ? ? ? ? ?D. [a]=7
解析:由程序框圖,得S=1,? k=1;S=1+[ 11×2 ]= [32],k=2;S= [32] + [12×3] = [53],k = 3;S = [53] + [13×4] = [74],k = 4;S= [74] [+ 14×5] = [95],k = 5.根據(jù)選項得[a]=4. 故選A.
(2)運行如圖5所示的程序,若結(jié)束時輸出的結(jié)果不小于3,則t的取值范圍為? ? ? ? ? ? ? ? ? ? ? ? ?.
解析:依次執(zhí)行循環(huán)體得,第一次執(zhí)行:n=2,x=2t,[a]=1;第二次執(zhí)行:n=4,x=4t,[a]=3;第三次執(zhí)行:n=6,x=8t,[a]=3,此時輸出的值為[38t].若[38t]≥3,則8t≥1,[t≥18].
點評:執(zhí)果索因求參數(shù),一般有兩種方法,一是視參數(shù)為常量,運行程序框圖,反復(fù)執(zhí)行,直至輸出已知的結(jié)果;二是直接列出含參方程或不等式,這樣也可算出參數(shù)的值或者參數(shù)的取值范圍.
四、數(shù)學(xué)傳統(tǒng)文化在程序框圖中的應(yīng)用
數(shù)學(xué)傳統(tǒng)文化出現(xiàn)在程序框圖中,是近年算法試題的亮點,這類問題以循環(huán)結(jié)構(gòu)的程序框圖居多,體現(xiàn)了對考生數(shù)學(xué)核心素養(yǎng)的培養(yǎng)要求.
[例4] 《數(shù)書九章》是我國宋代數(shù)學(xué)家秦九韶的著作,其中給出了求多項式的值的秦九韶算法,如圖6所示的程序框圖給出了一個利用秦九韶算法求某多項式值的實例,若輸入的x=[13],輸出的y=[12181y],則判斷框“
圖6
A.k≤ 2? ? ? ? ? ?B.k≤3?
C.k≤4? ? ? ? ? ?D.k≤ 5?
從以上例題可以看出,高考對算法初步的考查,不僅僅是考查算法本身,同時還注重知識的綜合性,尤其是注重與函數(shù)、數(shù)列和三角的綜合,應(yīng)引起大家的重視.
(責(zé)任編輯? ? 黃春香)