高連 浙江省湖州中學
在信息技術課堂中充分挖掘教學資源,培養與發展學生的計算思維仍困難重重,充滿挑戰。具體表現在以下三個方面。
計算思維是運用計算機科學的基礎概念進行問題求解、系統設計,以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動,然而很多教師常是機械化地完成每節課的操作任務,不能將計算思維很好地融入項目教學,無法有效傳達計算思維的核心概念。
在實際生活中,大部分學生對具體問題不會解構,而部分教師沒意識到這個問題,導致在教學中遇到需要結構的問題時,沒有引導學生如何思考、解構和模式識別。
在教學中,教師常采用題海戰術,很少深入分析題目間的差異,并總結歸納題目之間的聯系,導致學生花費大量時間做題,但無法有效提升解決問題的能力。
高中信息技術課程要求學生通過具體的技術操作體驗,理解其背后的原理與格局、特點與局限,拓寬視野,發展思維。因此,教師可將學生的學習問題進行整合,幫助學生分析問題,并引導學生自主解決問題,培養其計算思維。
下面,筆者以編寫計算機程序(Python turtle)繪制一個正方形為例,呈現引導學生使用計算思維解決問題的步驟。
正方形是四邊形,相鄰的兩個夾角是90度,首先向Python turtle發出指令,讓它畫出一個正方形,調整函數的參數可以繪制不同大小的正方形。教師要引導學生做好問題的解構,使其了解更細致的內容,進而明確實際操作的步驟,即使用forward(distance)指令讓小烏龜前進一個指定的距離,使用turtle.left(degree)指令讓小烏龜逆時針轉動90度,如下頁圖1所示。接著,教師引導學生可以將該問題的計算思維“灌輸”給小海龜,讓它根據自己的思維執行相應的動作。

圖1
通過“解構”,把一個復雜問題分解成了一系列可控而容易解決的簡單任務,這樣能讓學生明白接下來的操作步驟。具體指令如圖2所示,運行結果如圖3所示。

圖2

圖3
學生通過觀察發現,繪制一個正方形,相同的指令重復了4次,使用了8行代碼。若要繪制一個正六邊形,則相同的指令需要重復6次,使用12行代碼,只不過是轉動的角度不同。基于此發現,學生便可以設計算法,解決類似的問題。
接下來,就可以引導學生利用for循環編制程序,具體如圖4所示。

圖4
引導學生進一步思考,他們會發現只需要進行兩處修改便可以實現代碼重用,可以推廣到任意正多邊形(如圖5),運行結果如圖6所示。

圖5

圖6
turtle繪圖是一個十分有趣的算法學習方式,教師引導學生獨立進行實踐操作,強化了學生的計算思維,激發了學生的積極性,也使學生在計算思維的體驗中明白了知識間的關聯性。
具備計算思維的學生,能對問題進行抽象、分解、建模,通過設計算法形成解決方案,并將其遷移運用于解決其他問題。下面是引導學生使用算法解決數學問題的例子—歐拉計劃的問題(Project Euler)。
網格路徑:從一個2×2網格的左上角出發,若只允許向右或向下移動,則恰好有6條抵達右下角的路徑(如圖7)。那么,對于20×20網格,這樣的路徑有多少條?

圖7
利用計算思維的解構與模式識別,會發現以下的規律:
這個網格是一個帶有四個小方格的正方形。想要找到所有路徑,可以選擇從左上角出發,則最上面一條邊的點只能是從左面過來,最左面一條邊的點只能是上面點過來,所以它們都只有一種路徑,而中間的點既可以是上面點過來,又可以是左面點過來。
進一步抽象之后,得到狀態方程:dp[i][j]=dp[i-1][j]+dp[i][j-1]
具體的Python程序如圖8所示。

圖8
案例:智能城市交通優化。
背景:某城市的交通問題越來越嚴重,交通擁堵和交通事故頻發。為了解決這個問題,政府決定引入計算思維來優化交通系統。
多層需求:
市民需求—市民希望能夠更快、更安全地出行,減少交通擁堵和事故風險。
環境需求—減少車輛擁堵,降低尾氣排放,改善空氣質量,減少噪音污染。
經濟需求—提高交通效率,減少時間浪費,促進經濟發展。
多位格局:
政府部門—負責制訂交通規劃和政策,管理交通系統運行。
車輛駕駛員—負責遵守交通規則、道路安全,確保自身行車安全。
交通管理機構—負責交通信號燈、路牌等設施的設置和維護。
解決方案:
數據收集與分析—通過城市攝像頭、交通傳感器等設備收集交通數據,包括車流量、擁堵情況、事故發生地點等。
算法優化與模擬—使用計算機模擬來預測交通流動情況,根據實時數據和歷史數據,進行路網優化、信號燈優化等。
交通管理與協調—基于優化的結果,交通管理機構可以及時調整信號燈時間、道路限行政策等,以減少交通擁堵。
數據共享與智能導航—將優化后的交通數據共享給市民,讓他們可以通過APP等方式獲取實時路況信息,選擇最佳路徑出行。
教師利用案例引導學生利用計算思維來解決城市交通問題,啟發了學生思考問題及解決問題的方式。同時,還應為學生提供相似的例題展開專題練習,鞏固計算思維的培養。
根據教學實踐,筆者認為例題可從以下三種來源中選?。?/p>
一是選考真題中的主觀題。題目綜合性強,涉及多維度的復雜問題,教師可以根據其提供的情境,進行適度的改編。
二是信息學競賽中的相關試題。題目可能晦澀難懂,教師可通過講解,激發學生找到化繁為簡、深入淺出的表述方法,并最終達到觸類旁通、舉一反三的學習目標。
三是各類聯考卷中的“大題”。教師可以收集并選擇合適的題目,進一步抽象、提煉、整合。
總之,教師要積極培養學生的計算思維,使其能夠對現實中的真實問題提出新的解決方案,創造性地解決問題。