計算機解決問題的過程
廣東肇慶中學 胡德林
一、教學內容
教學內容選用中華人民共和國教育部制訂的《普通高中技術課程標準》(2003年4月版)中信息技術部分的選修模塊1“算法與程序設計”第一章的第一課“計算機解決問題的過程”,教學時數為1課時(45分鐘)。《普通高中技術課程標準》建議“算法與程序設計”模塊在高中二年級第一學期或以后開設。
二、教材分析
根據2003年4月版《普通高中技術課程標準》的闡述,“算法與程序設計”是普通高中信息技術的選修模塊之1,它的前導課程是信息技術的必修模塊“信息技術基礎”。學生在“信息技術基礎”模塊里已經學習了計算機的基本操作,掌握了啟動程序、窗口操作和文字編輯等基礎知識。學生可以利用上述的基礎知識,用于本節課的啟動Visual Basic程序設計環境,輸入程序代碼,運行程序等操作。本節課“計算機解決問題的過程”是“算法與程序設計”模塊的第一節課,上好這節課是使學生能否學好“算法與程序設計”這一模塊的關鍵。本節課的教學目的是讓學生理解分析問題、設計算法、編寫程序和調試程序等用計算機解決問題的基本過程,認識其在算法與程序設計中的地位和作用,它也是后續課程如模塊化程序設計、各種算法設計等課程的基礎。
與本節課相聯系的舊知識是計算機的基本操作中鼠標、鍵盤操作,啟動、關閉程序,窗口、菜單操作和文字編輯等基礎知識,還有解決數學問題的步驟等知識。
三、教學目標
知識性目標:1、讓學生了解算法、窮舉法、程序設計語言、編寫程序和調試程序等概念。
2、讓學生知道對現實問題的自然語言的描述,特別是類似程序設計語言的自然語言描述。
3、讓學生理解分析問題、設計算法、編寫程序、調試程序這一用計算機解決問題的基本步驟,認識其在算法與程序設計中的作用。
技能性目標:1、培養學生發現舊知識的規律、方法和步驟,并把它運用到新知識中去的能力。2、培養學生調試程序的能力。3、培養學生合作、討論、觀摩、交流和自主學習的能力。情感性目標:
通過“韓信點兵”這個富有生動情節的實例和探究、講授、觀摩、交流等環節,讓學生體驗用計算機解決問題的基本過程。
四、重點難點
本節的重點用計算解決問題的過程中的分析問題、設計算法、和上機調試程序等步驟。用計算解決問題的過程中的分析問題、設計算法也是本節的難點。
五、教具選擇
1、可以進行屏幕廣播的多媒體電腦室。
2、教師自行設計制作的課件。
3、印刷《計算機解決問題的過程》教學活動表(見附1)。
六、教學方法
讓學生在人工解題中發現分析問題、設計算法等步驟,并把它應用到用計算機解決問題中去,這是構建主義中知識遷移的方法。本節課還采用了探究、講授、觀摩、交流、閱讀材料等多種教學活動的有機結合的方法。
七、教學過程
(一)引入
教師:“在科技發達的今天,我們到處都可以看到計算機的蹤影,感受到計算機給學習、生活帶來的方便。然而,在驚嘆計算機的神奇和享受的歡樂的時候,你是否了解計算解決問題的基本過程?有沒有思考過其中的奧妙呢?下面我們先看一個古典的問題:”
學生觀看約1分鐘的電視劇《漢劉邦》片斷,內容大致如下:
“韓信是我國西漢初著名的軍事家,劉邦得天下,軍事上全依靠他。韓信點兵,多多益善,不僅如此,還能經常以少勝多,以弱勝強。在與楚軍決戰時韓信指揮諸侯聯軍,在垓下十面埋伏,擊敗楚軍,楚霸王項羽因此自殺。”
片斷結束時屏幕出現“韓信點兵”問題:“相傳漢高祖劉邦問大將軍韓信統御兵士多少,韓信答說,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人……。劉邦茫然而不知其數。你呢?”
(二)問題
教師:“下面我們先助劉邦解決一個簡單的問題!
展示題目:
“韓信點兵”問題1:求整除3余1、整除5余2、整除7余4的最小自然數。
(三)探究
把全班分成16個學習小組,每個小組的同學一起探究、討論問題。利用已學過的數學知識找出題目已知什么求什么、明確已知和未知之間的關系和寫出求解問題的解題步驟。并填寫《計算機解決問題的過程》教學活動表中的“探究問題記錄表”。如下:
探究問題記錄表分析問題(找出已知和未知、列出已知和未知之間的關系)寫出解題步驟結果給5分鐘學生討論,教師在這過程中到各學習小組中,引導個別學習小組分析問題、寫出解題步驟。
教師提問2~3個同學,從中逐漸引導出類似如下的分析問題和解題步驟,并給出算法的概念。
分析問題(找出已知和未知、列出已知和未知之間的關系)寫出解題步驟設所求的數為X,則X應滿足:
X整除3余1X整除5余2X整除7余41、令X為1。
2、如果X整除3余1,X整除5余2,
X整除7余4,這就是題目要求的數,則記下這個X。
3、令X為X+1(為算下一個作準備)。
4、如果算出,則結束;否則跳轉2。
5、寫出答案。
教師解釋第3步“另X為X+1”并指出它與數學中的區別,并從上面的解題步驟中總結出窮舉的算法。
教師:“剛才有些同學把題目解出來了,答案是67,韓信作為大將軍,統率士兵當然不止67人,下面我們來解決一個數據量稍大的問題!