談談新課程改革中「演算法迴圈結構流程圖」的教學

2022-05-02 05:33:02 字數 3831 閱讀 4717

**摘要:本文是分析新教材中「演算法迴圈結構流程圖」的型別、迴圈結構的退出條件、迴圈結構與其他結構的聯絡、以及設計迴圈結構流程圖應注意的事項等四個方面,其中重點談到如何把握和設計迴圈結構的退出條件,著手探索演算法迴圈結構流程圖的教學。

關鍵詞:流程圖;計數變數;迴圈結構

為了加強高中課程與社會發展、科技進步以及學生生活的聯絡,於是在2023年高中課程改革時,高中數學新教材就增加了演算法知識,並放在數學必修ⅲ的第一章。其中流程圖是演算法中的重點,而迴圈結構的流程圖是乙個難點,學生在學習時感到最困難的是迴圈結構出口條件的把握,也就是說何時應該退出迴圈結構執行下一步?退出時該用「>」還是「≥」,用「<」還是 「≤」?

計數變數、累加變數的初始值與終值分別是什麼?迴圈結構中的當型與直到型有何區別?等等,學生感到茫然。

若學生掌握了流程圖,程式設計序就容易了,因此我認為,加強對演算法中迴圈結構的分析與研究很有必要。下面結合具體問題談談我在學習新教材和實施「演算法中迴圈結構流程圖」教學過程中的認識和體會。

正如我們知道的,「在一些演算法中,也經常會出現從某處開始,按照一定條件,反覆執行某一處步驟的情況,這就是迴圈結構。反覆執行的步驟稱為迴圈體。」【1】那麼我們在教學中應該關注的是什麼呢?

關注的問題一:迴圈結構有哪些型別?

根據對條件的不同處理,迴圈結構分為如下兩種,

(一)當型(while型)。「當型迴圈在每次執行迴圈體前對控制迴圈條件進行判斷,當條件滿足時執行迴圈體,不滿足則停止;」 【2】當型迴圈有時也稱為「前測試型」迴圈(如圖1)。

(二)直到型(until型)。「直到型迴圈在執行了一次迴圈體之後,對控制迴圈條件進行判斷,當條件不滿足時執行迴圈體,滿足則停止。」【3】直到型迴圈又稱為「後測試型」迴圈(如圖2)。

對同乙個問題,一般來說既可以用當型,又可以用直到型。當然其流程圖(即程式框圖)是有所不同的。

例1 設計乙個計算1+2+3+…+100的值的程式框圖。其當型迴圈結構程式框圖是圖3,直到型迴圈結構程式框圖是圖4。

迴圈結構不能是永無終止的「死迴圈」,一定要在某個條件下終止迴圈,這就需要判斷框作出判斷,因此,迴圈結構中一定包含判斷框。

從以上例子還可看出當型迴圈的判斷條件「i<100?」與直到型迴圈的判斷條件 「i>=100?」剛好是相反的。即在同一演算法中,當型迴圈與直到型迴圈的條件互為對立。

關注的問題二:如何把握和設計迴圈結構的退出條件?

這裡有必要先介紹計數變數和累加變數的作用:計數變數是用於記錄迴圈次數,同時它的取值還用於判斷迴圈是否終止;累加變數(或稱累積變數)用於輸出結果。

(一)計數變數和累加變數(或稱累積變數)一般是同步執行的,計數一次,就累加(或累積)一次。

例1中「i」是計數變數,「s」是累加變數。每對i計數一次,就對s累加一次,當i=100時,退出迴圈,此時迴圈次數剛好為100次。

(二)有時計數變數並沒有準確記錄迴圈次數。如:

例2 設計求1+3+5+7+…+31的流程圖。

例2流程圖(圖5)用的是直到型迴圈,當中的s是累加變數,i是計數變數,這裡每對s累加一次,就對i計數一次,當i>31(即i=33)時要退出迴圈體,但此時迴圈次數卻只有16次;

(三)有時計數變數有兩個,乙個用來判斷迴圈是否結束,另乙個用來準確記錄迴圈次數。如:

例3 設計求1×2×4×7×…×46的程式框圖。

例3程式框圖(圖6)是直到型迴圈,當中t與i都是計數變數,p是累積變數,每對t和i計數一次,就對p累積一次,其中t是控制迴圈次數,i是判斷迴圈是否終止。當i>46(即i=56,t=9) 時,退出迴圈體,此時迴圈次數剛好是9次,只是在設計框圖時不需人為算出t=9。

(四)有時要退出迴圈體,有計數變數還是無法真正退出迴圈結構的。如

例4 任意給定乙個大於1的整數n,試設計乙個程式或步驟對n是否為質數做出判定。演算法如下:

第一步,判斷n是否等於2。若n=2,則n是質數;若n>2,執行第二步。

第二步,依次從2~(n-1)檢驗是不是n的因數,即整除n的數。若有這樣的數,則n不是質數;若沒有這樣的數,則n是質數。

根據演算法直接畫出的程式框圖(圖7),這裡d是計數變數,但此時當中紅色粗線部分問題還沒解決。

這就需要增加乙個變數flag,它是用來判斷是否為質數的乙個變數,該變數的取值只有兩個,「1」和「0」,若flag=1,則是質數;否則不是質數。flag並沒有實質的含義,那就象乙個人的姓名能代表他本人,其外號也可代表他本人,學號同樣能代表他本人。而一般來說用學號管理更方便。

「flag=1」只是質數的乙個代號。當然代號可以選別的,如用b變數,「b=1是質數的代號,而當b≠1時則不是質數」等等都行。直到型迴圈結構的圖8是正確的。

該例中有計數變數d,d與flag的取值都是用於判斷迴圈是否終止,在這裡兩變數缺一不可。我們在這裡就把類似於 「flag」 這樣作用的變數叫做標誌變數。標誌變數並不記錄迴圈次數,它只用來控制迴圈體結束。

(五)有時迴圈體中並無計數變數,且迴圈次數是不能確定的。以上的例1,例2,例3中都有計數變數,且迴圈體的迴圈次數都是確定的,而在例4中迴圈次數是不確定的,有0,1,2,…,n-2次多種可能。又例如

例5 用二分法設計乙個求方程x2-2=0的正近似根的演算法(精確到ε=0.005)。

第一步:令f(x)= x2-2,因為f(1)<0,f(2)>0,則根在區間(1,2),設x1=1,x2=2,即根在區間(x1 ,x2)。

第二步:令m=,計算f(m)的值,並判斷f(m)是否為0。若是,則m為所求根;若否,則繼續執行以下步驟。

第三步:若f(x1)f(m)>0,知f(m) f(x2)<0,則根在區間(m, x2),令x1=m;否則根在區間(x1 ,m),令x2=m。

第四步:判斷|x1—x2|<ε(即|x1—x2|<0.005)是否成立?若是,則令m=,m為滿足條件的近似根;若否,則返回第二步。

其框圖如圖9(是直到型迴圈結構),這裡並無計數變數,而用來判斷迴圈是否終止的只是標誌變數a。其迴圈次數最多為(這裡x1,x2是初始值),但實際上並不知道其實際的迴圈次數。

關注的問題三:迴圈結構與其他結構有何聯絡?

1. 迴圈結構中都有順序結構。

2. 條件結構巢狀著迴圈結構,如圖8。

3. 迴圈結構巢狀著條件結構,如圖8,圖9。

4. 迴圈結構巢狀著迴圈結構,如圖10(是乙個關於九九乘法表的流程圖)

最後談談設計迴圈結構流程圖應注意的事項:

1. 計數變數和累加變數(或累積變數)分別代表什麼?有什麼作用?

2. 兩個變數(計數變數和累加變數)的初始值、終值分別是多少?

3. 計數變數遞加的值(即步長)有多大?

4. 退出迴圈體時判斷框中計數變數取值限制,用「>」還是「≥」?用「<」還是 「≤」?

5. 不要漏掉流程線的箭頭,也不要忘記在判斷框相連的流程線上寫「是」(或「y」),「否」(或「n「),還要注意當型中「是」執行迴圈體,直到型中「是」退出迴圈體。

6. 當遇到條件結構巢狀著迴圈結構,或迴圈結構巢狀著條件結構,或迴圈結構巢狀著迴圈結構時,注意一定要把整個結構套進去,就象大盆裝小盆,要完整的裝好,不能溢位。

7. 迴圈結構一般只有乙個進口,乙個出口。在二分法的圖9中,迴圈體中設計了乙個進口,乙個出口,只有這樣才能順利轉化為程式語言。

【1】普通高中課程標準實驗教科書《數學3》(a版)人民教育出版社,2004,5第1版p9

【2】【3】普通高中課程標準實驗教科書《數學3》(a版)人民教育出版社,2004,5第1版p10

參考文獻

①普通高中課程標準實驗教科書《數學3》(a版)人民教育出版社,2004,5第1版

②《中學教材全解高中數學必修③》主編: 薛金星,陝西人民教育出版社,2005,1第1版,2006,2第1版

③《高中同步測控優化設計》主編:任志鴻,南方出版社2004,12第2版,2006,1第3版

**題目:談談新課程改革中「演算法迴圈結構流程圖」的教學

作者:盧麗英

單位:東莞中學數學科

聯絡**:22119827 ,137********

新課程教學結構改革「是」與「非」

新課程教學結構改革的 是 與 非 在新課程教學結構改革風起雲湧的今天,我們每乙個教師都響應著黨和國家的號召,迎著黨的十八的春風,在全國教育工作強進推進新課程改革的精神指導下,無不在不同程度地嘗試著進行課堂教學改革。改革就會有陣痛和失敗,改革就會有創造和成功。我是一名農村小學的數學教師,同樣也在進行新...

新課程改革中的歷史教學反思

一 教師引導學生自學 現代歷史學習方式的運作以學習者的主動參與為先決條件。不是要我學,而是我要學。學習歷史不再是負擔而是享受。課堂學習已不能滿足學習的需要,課外自主安排學習。視歷史老師為良師益友,產生了主動與之對話的強烈願望。教師應放手讓學生自我思考 自由 鼓勵學生大膽發言 創新立異,充分尊重學生的...

新課程中的評價改革 一天

第一部分什麼是課程評價 一 什麼是評價 一 幾個相關概念 測量 對事物的量化的客觀描述。評定 對學生的學習成就 發展狀態的客觀描述。評價 對事物能否滿足主體需要作出的判斷。二 名目繁多的評價型別與簡化的必要性 發展性評價水平性評價選拔性評價形成性評價終結性評價 診斷性評價激勵性評價獎懲性評價高利害評...