資源描述:
《淺談窮舉法的教學設計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、淺談窮舉法的教學設計摘要:編寫計算機程序解決問題時,算法及代碼實現(xiàn)是兩個重要環(huán)節(jié)。教學中,如何引出算法,理清思路,并在代碼學習中幫助學生維持學習興趣,一直是程序設計課的關(guān)注點。關(guān)鍵詞:窮舉法;趣味故事;代碼實現(xiàn)中圖分類號:G633.671學情分析學生已掌握程序設計的三種基本結(jié)構(gòu),對算法有了一定認識,熟悉VB常用語句,具備使用解析法進行簡單程序設計的能力,但對VB程序設計語言的代碼學習感到枯燥乏味,學習興趣較難維持。2教學目標(1)了解窮舉法的特點,掌握用窮舉法設計算法的基本要求。(2)學會編寫程序?qū)崿F(xiàn)窮舉法⑴
2、。3教學過程3.1創(chuàng)設情境,引入窮舉算法。古希臘有位著名的數(shù)學家叫丟番圖,其年齡史籍上沒有明確記載,據(jù)說從碑文上可以得知一二:丟番圖長眠于此。神賜予他生命的1/6是童年,再過了生命的1/12,他長出了胡須,其后丟番圖結(jié)了婚,這樣度過了一生的1/7,再5年,他獲得了頭生子,然而愛子早逝,只活了丟番圖壽命的一半,喪子后,他在數(shù)學研究中尋求慰藉,又過了4年,在悲痛中結(jié)束了自己的一生。設計意圖:(1)由故事引入教學內(nèi)容,營造生動有趣的學習環(huán)境。(2)為解析算法到窮舉算法的學習提供過渡。過程描述:多數(shù)學生選擇列方程求得
3、問題答案。當問及“計算機會列方程嗎?”學生的思維發(fā)生逆轉(zhuǎn)?!翱梢砸粋€數(shù)一個數(shù)的試!”教師借機由“試”引入窮舉的算法思想。3.2呈現(xiàn)概念,編程實現(xiàn)窮舉法。窮舉法也叫枚舉法、列舉法,它是將求解對象一一列舉出來,然后逐一加以分析、處理,并驗證結(jié)果是否滿足給定的條件。窮舉完所有對象,問題將最終得以解決。⑴設計意圖:(1)由概念分析窮舉法的算法思想。(2)由概念分析窮舉法的程序結(jié)構(gòu)。程序代碼:3.3提升難度,進行變式練習。問題一:一個大籠子里關(guān)了一些雞和兔子。數(shù)它們的頭,一共有36個;數(shù)它們的腿,共100條。則雞有多少
4、只,兔有多少只?[2]程序代碼:問題二:京城有位賣雞的張老漢,他有個兒了非常聰明,擅長算術(shù),是遠近聞名的“小神童”。宰相聽說后想試探究竟,于是派仆人到店里打聽雞的價錢,張老漢告知“公雞五文錢一只,母雞三文錢一只,小雞一文錢三只”。仆人給他一百文錢,要求公雞、母雞、小雞都要,數(shù)量不多不少一百只。張老漢怎么也想不明白,只好問兒子。小神童不慌不忙,掐指一算就給出了答案。請用窮舉法編寫程序求出問題答案。⑴程序代碼:設計意圖:(1)變換故事場景,幫助學生在代碼學習環(huán)節(jié)維持越高的學習興趣。(2)通過趣味小故事逐步展開教學
5、內(nèi)容,將枯燥乏味的代碼學習變得活潑牛動。3.4拋出問題,進行教學收尾。在求“丟番圖年齡”時,有同學選擇的范圍是1?100;有同學選擇了1-50;還有同學說是1-00,請問選取不同的對象范圍程序在運行時會產(chǎn)生怎樣的變化?4教學反思4.1趣味小故事的設計。第一次使用“雞兔同籠”游戲直接引入教學內(nèi)容,由于問題背景熟悉,只在一定程度上起到了將問題形象化的作用,并沒有使學生的思維達到預期的活躍度。導入不到位,學生的思維沒有打開,自主思考的預期沒能達成,學生思維停留在“問什么答什么”的初級階段。第二個班教學時,用數(shù)學家丟
6、番圖的故事創(chuàng)設情境。故事的引入調(diào)動了學生的積極性,充實了教學內(nèi)容。隨后《雞兔同籠》、《百雞百錢》兩個趣味小故事的相繼引入,使整個教學過程呈現(xiàn)出梯度,內(nèi)容從單層循環(huán)到循環(huán)嵌套,逐步展開,銜接緊湊。4.2對教學收尾環(huán)節(jié)的思考。第一個班級的授課,在分析算法思想時,同學們對對象范圍的確定給出了不同答案。因為時間關(guān)系,教師只能稍做點評,然后通過分析程序運行過程得岀“減少循環(huán)體的執(zhí)行次數(shù)可以提高程序運行效率”。因教學重點是窮舉的算法思想,沒有充足的時間留給學生思考優(yōu)化程序的重要性,以致在后面的鞏固練習中學生對“對象范圍的
7、確定”僅限于解題,并不能在確定對象范圍的同時考慮到程序的優(yōu)化因素。第二個班級的授課,由故事引入,從解析法自然過渡到窮舉法;再用故事銜接,由單層循環(huán)的應用深入到雙重循環(huán)、三重循環(huán)。結(jié)尾處,把優(yōu)化程序的教學內(nèi)容以問題的形式拋給學生,為后面習題課的導入做了很好的鋪墊,也給學生留下了廣闊的思考空間。下課鈴響時,學生的思維沒有停滯在那一刻,問題的拋出使課堂45分鐘得到了拓展與延伸。4.3對任務呈現(xiàn)環(huán)節(jié)的思考。學生對VB程序設計語言自主學習能力較弱,不能嘗試完全放手讓其進行合作探究。如果以數(shù)學家丟番圖的故事和“雞兔同籠”
8、同時導入,以分組探究的方式,讓學生自主實踐,在活動中比較兩個任務的不同,歸納窮舉算法的解題要點。這種設計更能體現(xiàn)“學本”的教學理念,能使學生的思維得到更充分調(diào)動,讓學生在達到基本學習要求的前提下,有個性的發(fā)展,真正體驗到程序設計的樂趣。參考文獻:⑴普通高中課程標準實驗教科書.《算法與程序設計(選修)》[M].北京:教育科學出版社,2004.[2]李牛元,朱軍?《算法與程序設計實踐指導》[M].北京: