潘安娜
培養(yǎng)學生的計算思維,提高他們的創(chuàng)新能力,讓計算機幫助我們高效地解決問題,不要讓程序代碼編寫消耗了學生學習程序設計的熱情。也許舉一些有趣的實例,換一種“編程工具”就能喚起學生編程的興趣。
一、教學分析
在實際教學中,程序設計通常是信息技術教師“避教”、學生“避學”的內(nèi)容,究其原因是其枯燥的理論知識、深奧的語法和乏味的例題。如何讓學生簡單輕松地理解算法思想,讓學生“愛”上程序呢?我們應該以培養(yǎng)學生計算思維為目標,借助工具來降低編程難度,少寫程序,甚至不寫程序。但計算思維是一種思維,它是以程序為載體的,不編寫程序似乎又是不可能的?!爱嫵獭边@款軟件不僅僅能用來繪制流程圖,它還可以根據(jù)流程圖自動生成程序代碼,并實現(xiàn)運行。借助“畫程”,信息技術教師可以大大降低編程對學生的干擾,把重點放在解決問題的思維方式上。本節(jié)課設計了三個實例:“尋找開關對應關系”引導學生進入算法世界,體會流程圖表示的便捷、清晰等優(yōu)點,掌握使用流程圖描述算法的方法;“尋找污染的藥丸”將復雜問題通過分析、解剖變成簡單的算式問題,掌握畫程的使用方法,克服對程序的畏懼心理;“計算三角形面積”將所學知識應用到實踐,在熟練的基礎上深入討論問題的多種可能性,訓練學生思維的嚴謹性。
二、教學目標
(1)知識與技能:理解算法三大邏輯結構,能使用流程圖描述算法。
(2)過程與方法:體驗計算機解決問題的一般過程。
(3)情感、態(tài)度與價值觀:培養(yǎng)學生的邏輯思維能力。
三、教學過程
1.趣味導入
(1)上課之前,我們先來做個IQ測試題:
(2)學生討論,用自然語言來描述解決步驟,教師總結,并讓學生完善解決該問題的流程。
(3)對比自然語言和框圖表示,突出框圖表示的優(yōu)點,講解流程圖表示程序三大結構的方法。
(4)借助“畫程”軟件幫助我們輕松繪制流程圖。
【設計意圖:程序不僅可以解決數(shù)學問題,還有很多其他有趣的地方。有趣的實例可以吸引學生注意力,提高學生討論的積極性?!?/p>
2.提出實際問題
(1)畫流程圖的目的是解決實際問題,下面看一個實際問題:
(2)分析問題,學生討論:已知條件是什么?怎么稱?稱多少顆?怎么計算?
(3)設計解題步驟:1號藥瓶取1顆,2號藥品取2顆,3號藥品取3顆,4號藥品取4顆,稱出總重量z,假設每顆藥丸的標準重量是m,用算式z-10*m就可以計算10顆藥丸的重量和10顆藥丸標準重量之間的差值,該差值設為x,x的值就是被污染的藥瓶的編號。在“畫程”軟件中繪制該題的流程圖。
(4)編寫代碼:畫程中選擇某一種編程語言,自動生成程序代碼。
(5)運行驗證:運行并驗證結果。
【設計意圖:利用“畫程”自動生成程序的功能,大大減輕學生編程的負擔?!?/p>
3.自主解決實際問題
(1)自主探究,獨立解決下面這個實際問題:
(2)輸入的數(shù)據(jù)是否能計算出面積?有哪些條件要判斷?如何修改流程圖?
【設計意圖:降低編程的難度后,學生就會把關注點放在問題的解決上??此坪唵蔚膯栴},常常暗含了容易忽略的陷阱。輸入三邊數(shù)值,借助計算機運算,很容易就可以得出面積,但是輸入的三邊是否可以構成三角形呢?很多學生忽視了這一點。教師可以事先準備幾組數(shù)據(jù),讓學生進行運行測試,從運行結果中,他們就會意識到自己所忽略的問題。通過該實例,培養(yǎng)學生嚴謹?shù)乃季S能力?!?/p>
四、教學反思
本節(jié)課是一堂不寫程序的程序設計課,選取的實例生動有趣,很好地吸引了學生的注意力,討論激烈,取得了良好的教學效果。同時,借助“畫程”這個實用的軟件,將煩瑣復雜的編程工作交給計算機來完成,讓學生把精力更多地放在探討問題解決的方案上?!爱嫵獭毕藢W生對編程的畏懼,極大地調(diào)動了學生學習程序設計的熱情。
(作者單位:南京師范大學附屬中學)