摘 要:算法和程序設計的教學能讓學生從游戲、聊天、上網沖浪等對計算機工具基礎功能的認識轉變到計算機科學應用的高度上來。本文針對高中信息技術課標第三章——算法和程序設計的教學為例,探討如何通過設置引人入勝的教學活動來提升學生的計算思維等核心素養,進而有效提升高中生程序與算法設計課程的學習效果。
關鍵詞:高中信息技術;第三章;課標;教學方法
一、高中信息技術課標第三章的教學意義
高中階段在《信息技術必修1-數據與計算》的第三章設置了算法和程序設計章節,主要是讓學生了解算法及其基本控制結構,認識程序、程序設計語言,并掌握簡單數值數據算法與批量數據算法的設計方法。當前,人類社會對信息技術越來越依賴,計算機科學也顯得越來越重要。如何培養學生的計算機信息技術方面的能力,已經成為國內外計算機科學界和教育界關注的焦點。高中信息技術課標第三章——算法和程序的教學對學生的全面發展具有重要意義。
(一)算法和程序設計教學帶領高中生走進信息科學的殿堂,進一步拓展了學生的知識面。例如在學生學習語言時,教師需要講解信息的二進制表示,通過還需要對字符中的ASCII碼進行講解,使得學生能夠充分理解計算機數字運用與信息處理之間的關系。教師還可以借助學生熟悉的鐘表表盤上的羅馬數字來拓寬學生的知識面,如羅馬數字L表示50,I表示1等。
(二)培養高中生自主學習、解決問題與探索的能力。在算法和程序設計過程中,學生要分析教師給出的問題,并運用自己的智慧來分析教師給出的問題,找尋一種解決問題的算法,最后編寫出計算機程序。例如猴子吃桃,猴子每天吃的數量是桃子樹上桃子數量的一半再多兩個,到第9天,桃子的數量變為2,求出第一天樹上桃子的數量。學生要首先分析第7天、第8天樹上桃子的數量,并找出后面三天桃子數量的規律,找出遞推公式,進而設計出算法。通過算法和程序設計,學生就掌握將復雜問題簡單化的方法,學會找出方法與規律,從問題中提煉出數學模型,編寫程序、設計算法,過程中也要求學生要有探索精神與自學能力,這就是計算機思維最重要的能力。
(三)培養高中生細心、嚴謹的做事習慣。算法的設計要求非常準確、嚴謹,而在程序代碼輸入的過程中,出現一個代碼的錯誤,就會讓整個程序無法運行,需要通過不斷完善與調試才能找出錯誤,得到最終正確的結果。過程中就培養了學生有條不絮、耐心、嚴謹細致的做事習慣,這對學生的發展與終身教育均具有促進作用。
(四)培養學生計算思維能力。計算思維能力的培養體現在程序設計與算法教學的全過程中,要求學生具有較強的創新能力,其主要目的是培養創新型人才。現如今,各個學科的發展對計算機信息技術的依賴性越來越高,要求學生必須具備計算思維,這與程序設計與算法課程的培養目的不謀而合。
二、高中信息技術課標第三章模塊內容解析
高中階段信息技術課標第三章“算法和程序設計”模塊包括“程序基礎”“程序設計語言”“計算類問題”以及“程序設計”四個部分。
(一)“程序基礎”單元
這一模塊的內容主要側重于程序與算法編寫的基本功學習與訓練。這一模塊從日常生活中的“洗衣流程”入手,認識算法,并描述“洗滌”算法,分析洗衣流程的控制結構,讓學生進一步了解算法設計和問題分析結局的關系。
(二)“程序設計語言”單元
本單元內容是體驗程序設計與相關算法思維。本單元從程序解決典型的“解決溫標轉換”問題入手,了解程序的基本控制結構在解決問題中的重要性,力求解決簡單的數值統計類問題,讓學生掌握相關的算法思維。
(三)“計算類問題”單元
本單元主要內容是計算類問題、設計簡單數值數據算法以及相關算法思維。本單元從程序、算法解決典型計算類問題出發,解決學生熟悉的數學計算問題——用計算機計算圓周率等,了解相關的算法思維。
(四)“程序設計”單元
課程內容是設計批量數據算法和面向對象程序設計語言,要求學生掌握清單表示法和模塊設計法,即學生需要對面向對象程序設計語言的基本思想和方法進行掌握。在內容目標上,要掌握表示法和計算法的能力,要運用模塊化設計方法批量計算平均溫度,要提高程序設計、算法設計和解題能力。
三、活動引人入勝——高中信息技術課標第三章教學方法分析
(一)設置合理的任務活動,激發學生的積極性
任務驅動活動是指借助具體的任務,讓學生體驗完成任務的過程,并掌握算法和程序設計的基本知識與技能。算法和程序設計是一種實踐性較強的課程,為了調動學生的學習興趣,提升他們的動手積極性,教師在設置任務驅動活動時,要改變以往單一呆板的做法,應當采取以下幾種引人入勝的活動設計方法:
第一,任務的設置要具有親和力,要貼近學生生活。高中生在算法和程序設計方面的學習基本上都屬于初學者。因此,為了避免學生產生對算法與程序設計課程學習的畏懼心理,教師在算法和程序設計的任務設置上要選擇一些貼近學生生活的案例,提升算法和程序課程的親切感。例如在“雙分支選擇結構”學習中,教師可選擇學生熟悉的聊天工具——微信的登錄界面作為教學資源,當學生輸入錯誤的賬號秘密時,程序會彈出“密碼錯誤,請重新輸入”的提示,若學生輸入的賬號密碼正確,程序就會進入登錄成功的窗體,這屬于雙分支選擇結構。學生看到教師借助Python設計方法模擬的QQ登錄程序就會顯得比較感興趣,迫不及待自己親手也做一個,通過實踐運用,使得學生能夠更好地對雙分支選擇結構的用法和格式進行掌握和與運用。
第二,設置引人入勝、生動新穎、設置有趣的算法和程序設計活動。例如在“For循環結構”講解時,教師可要求學生畫出80個顏色不同的同心圓,這就調動了學生的好奇心,為學生接下來學習與聽講For循環語句的執行過程和格式調動積極性。最后,教師還可以告訴學生,掌握Python語言不止可以畫圓形,還可以快速畫出各種形狀、顏色的圖形,通過舉一反三,學生就能輕松掌握算法和程序設計的方法。
第三,任務活動的設置要深入淺出、循序漸進,提升學生的學習成就感。高中算法和程序設計章節的教學目標就是讓學生從簡單的實際問題出發,感受分析問題、設計算法并調試、解決問題的過程。教師應當先選擇一些容易操作、簡單的算法和程序設計任務,讓學生可以憑借自己的努力來獲得正確的算法與程序。例如在“單分支選擇結構”單元,教師可為學生設置“生肖查詢”的語句設計任務。由于有12個生肖,就需要設置12條IF條件語句,這其實是讓學生對IF條件語句進行反復應用,最后在程序中輸入出生年份就能查詢到對應的生肖。學生通過自己編寫查詢語句獲取正確的生肖,可讓學生體驗到學習算法和程序設計的成就感。
(二)創設新穎教學情境,激發參與熱情
算法與程序設計的教學應當從學生的興趣入手,借助高中生這個年齡段對事物的好奇心,創設各種趣味性的教學情境,進而為調動學生參與程序學習的積極性奠定良好基礎。
第一,以小游戲的設置來創設游戲情境,寓教于樂。高中信息技術課標的第三章內容是比較枯燥乏味的,教師可借助游戲情境,如“農夫過河”等簡單的游戲,讓學生了解算法在解決問題方面具有事半功倍的效果,并且掌握相關的算法設計技能,進而取得良好的教學效果。高中生的年齡段決定了他們對電腦游戲具有深厚的興趣,而電腦游戲又是程序算法設計語言開發出來的。教師可在教學例題中選擇一些電腦游戲的相關算法設計,讓學生通過對算法和程序設計的學習來設計出一些簡單的游戲操作,進而增強學生學號算法和程序設計這門課程的動力。
第二,將視頻作為導入,很吸引人。通過制作當前流行的微視頻,教師可以創設適當的教學情境,幫助學生深入理解算法和程序設計。舉例來說,在進行經典的程序設計問題——“韓信點兵”講解時,老師可以先給學生播放《楚漢傳奇》的相關視頻,并著重介紹“楚漢爭霸”的故事情節,引起學生對韓信點兵歷史故事的好奇和求知欲。老師接著就順勢問:你知道韓信是怎么計算出這些士兵的人數的嗎?最終,給學生解釋算法和程序代碼的問題,讓學生做一個現代的韓信,這樣學生能很容易地理解。
第三,借助問題情境設定懸念,吸引學生注意力。比如,老師在講授《For循環語句的嵌套結構》時,會問學生一個問題:你知道如何破解密碼鎖嗎?并且指導學生體驗一次像電視電影里的黑客一樣破解密碼的經歷,這樣既能激發學生的學習興趣,又能使學生在學習算法和程序設計這門課程時產生更大的動力,讓學生更自主地參與到問題的解決過程中來。
(三)優化實踐引導,提升學生動手能力
計算與編程是一門實踐性很強的課程。如果學生僅僅停留在理論分析上,而沒有參與上機實踐,就很難使學生學好算法,學會編程,因此加強學生實踐是非常重要的教學內容。實習過程中,教師應深入了解,兼顧趣味性和實用性的選擇,安排一些吸引人的實習。比如全國青少年信息學奧林匹克競賽,就是我國目前中學生算法與程序方面的最高水平的奧林匹克競賽。通過積極鼓勵學生參與競賽活動,培養優秀學生參與競賽并獲得獎項,從而充分調動學生的學習積極性,使得學生能夠積極地參與到算法與程序設計的實踐過程中,進而為優化自身的實踐動手能力奠定良好基礎。
參考文獻
[1]傅騫、唐文靜、王雯、鄭婭峰.面向高中編程教學的編程模式自動挖掘及教育應用研究[J].中國電化教育,2021(02):61-67.
[2]范云春.高中算法與程序設計教學的意義和有效性[J].科學咨詢(教育科研),2020(03):135-136.
[3]賈金元、武小龍.高中階段面向計算思維的編程教學模式的實踐與思考[J].中國教育技術裝備,2020(03):106-107+112.
[4]余棟材.基于項目學習的高中信息技術教學設計探究——以算法與程序設計課程教學為例[J].中國教育技術裝備,2018(19):55-56+63.
[5]張恒相.巧設問題情境,構建高效課堂——高中《算法與程序設計》教學實踐探索[J].教育現代化,2017,4(19):253-254.
[6]劉寶仙.高中信息技術《算法與程序設計》模塊課堂教學有效性探究——與數學“算法初步”整合教學行動研究[J].海峽科學,2012(02):87-88+90.
[7]歐陽建國.課標下對高中信息技術課“算法與程序設計”教學方法的思考[J].伊犁師范學院學報(自然科學版),2011(01):62-65.
作者簡介:熊城.1976年4月,男,漢族,福建省龍巖市,本科學歷,從事高中信息技術教育教學工作。