李振環(huán)
初步掌握計算機進行信息處理的幾種基本方法,認識其工作過程與基本特征,這是算法與程序教學最基本的要求,也是最初的教學內(nèi)容。本節(jié)課以前學生主要學習的是辦公軟件,是用現(xiàn)有軟件來處理相應的信息。本節(jié)課是讓學生體驗用自己編寫的程序來解決實際問題,使其進一步了解計算機程序的特征與功能,體驗分析問題、解決問題的基本過程與方法,進而提升學生自主處理信息的能力,也拉近了學習與技術的距離。
高一的學生已經(jīng)具備了一定的計算機使用能力,但大多數(shù)是使用常用軟件處理信息。對于計算機程序的了解只限于能舉例說明,對它的本質知之甚少,他們以前可能很少或者根本沒有接觸過計算機編程,因此,程序和編程對學生來說,有一定的神秘感。另外,學生現(xiàn)階段已經(jīng)具備了一定的邏輯思維、分析問題、表達思想的能力,也掌握了相關的數(shù)學知識。
本節(jié)課的教學設計,旨在營造和諧的生活化計算機程序體驗課,通過一系列的情境創(chuàng)設和學生探究、推導、體驗等學習活動,力求讓學生體會到計算機程序在生活中起的作用,自己動手編制計算機程序解決身邊的具體問題,進而了解利用計算機程序的特征與功能,明確解決問題的過程,有意愿把這樣的方法融入到現(xiàn)實生活中去。其中,本節(jié)課重在利用數(shù)學的“推導”思維引導學生進行算法與程序的設計,更有利于培養(yǎng)其計算思維。
● 情境導入,引起對程序功能的思考
學生思考下列兩個函數(shù)的二次函數(shù)圖象,嘗試根據(jù)數(shù)學知識手繪函數(shù)圖象。
Y=-3x2+5x+9
Y=2x2+4x+9
教師用VB程序繪制二次函數(shù)圖象。
師:說一說在手繪與程序繪制過程中有哪些不同的感受?
設計意圖:比較手繪和程序繪圖象,讓學生感受程序的效率。初步感受編程解決問題,以及和生活的聯(lián)系。
● 自主學習,感受程序的基本特征與功能
師:自主學習教材相關內(nèi)容,并回答下面問題。①舉例說明,計算機程序有哪些特點、用途,與硬件的關系是什么?②計算機語言有哪些,發(fā)展過程與特點是怎樣的?
設計意圖:先由學生自學理論知識,并設置問題幫助學生更好地理解程序的特征與功能,從計算語言發(fā)展歷程理解程序越來越方便的特點,在掌握程序知識的同時提高編程的自信心。
學生進行活動,自主學習并思考問題。學生通過對實例的探索,研究如何繪制同心圓,體驗編制計算機程序解決問題的全過程。
(1)分析、提出問題:同心圓的特點是什么?(圓心相同,半徑不同。)
(2)設計算法:調用Circle函數(shù),并講解Circle函數(shù)中參數(shù)的意義。
Circle (4000, 4000), 1000, vbred
圓心坐標 半徑 顏色
算法為:①確定圓心;②確定半徑;③確定圓的顏色。
設計意圖:學生未接觸過VB,所以選取了代碼簡單易懂的同心圓,只需一個Circle函數(shù)即可。圓心坐標相同,半徑大小不同,其實就是確定Circle函數(shù)的三個參數(shù)。
(3)開始編寫程序,向學生提示基本過程。
①添加按鈕控件作為執(zhí)行按鈕。
②雙擊按鈕進入代碼編輯窗口。
③編寫代碼(如下)。
Private Sub Command1_Click()
Circle (4000, 4000), 1000, vbred
Circle (4000, 4000), 1500, vbred
End Sub
第一句、最后一句程序自動添加是按鈕的單擊事件,可以理解為程序的開始和結束。寫兩個語句,即調用兩次Circle函數(shù),畫兩個圓,通過改變參數(shù)的值來畫不同的圓。
(4)調試運行:運行程序,主要是VB軟件的使用。
(5)檢測結果:測試的結果運行即可得,如果得到的結果是同心圓說明結果正確,否則需要檢查錯誤的地方并且改正,再次運行檢測。
設計意圖:學生經(jīng)歷了利用計算機程序語言解決實際問題的基本過程,對編程有了一個全面的了解,初步了解了VB程序軟件和基本使用方法,解密了編程的神秘感,拉近了信息技術與生活實際的距離。
● 小組合作,在“推導”數(shù)學關系中深化計算思維
由于學生從未接觸過VB,如果采用與數(shù)學結合的方法讓其理解、體驗算法的設計,學生能更容易地完成程序,也可以更有思維深度地去化解程序中命令參數(shù)的應用難點。本環(huán)節(jié)采用的方法就是數(shù)學推導法,也就是根據(jù)基本的算法與程序,推導出更復雜、更有趣味的圖形算法與程序,提高編程時運用參數(shù)的能力。
設計系列任務,筆者倡導學生通過小組合作完成任務,以更直觀清晰的實例探索推導程序的特點與功能。
小組任務一:按照編程的基本過程,自主完成以下圖形(如下頁圖1)。
設計意圖:同心圓是圓心坐標不變,半徑變。任務一是不變半徑、變圓心的橫縱坐標。是對Circle函數(shù)的遷移與運用,也是對編程過程的體驗;為任務二做過渡,讓圖形更豐富,讓算法與程序設計更有挑戰(zhàn)性。體現(xiàn)用推導方式理解程序中參數(shù)變化對算法設計的影響,以及體現(xiàn)程序的功能。
小組任務二:合作完成以下圖形,看看哪個小組做得快(如圖2)。
小組活動:學生分為8個小組,1、8組做圖A,2、7做圖B,3、5做圖C,4、6做圖D,其中核心的工作是分工進行數(shù)學推導,計算各圓的半徑和圓心。
設計意圖:在學習過程中,學生發(fā)現(xiàn)知識的規(guī)律,增強推導問題的能力以及邏輯思維的嚴密性、條理性;懂得知識的遷移學習;體會程序畫圖的準確性和美感,感受算法與程序設計的功能;增強在推導思維與計算思維形成中的小組合作能力和團隊意識。
小組作品展示:展示自己小組的作品并相互評價。
設計意圖:讓學生能夠感受到成功的喜悅。
小組任務拓展:自由發(fā)揮,繪制出自己的創(chuàng)意圖形。
設計意圖:讓學生充分發(fā)展個性,既加強對知識的應用也增強應用的靈活性,鍛煉了學生的想象力。
小組作品展示:展示自己小組的作品、各個小組相互評價。
設計意圖:學生能夠展示自己的個性設計。
● 課堂小結,梳理計算用程序解決問題的基本過程
師:本節(jié)課大家對算法與程序的關系、程序的功能方面有何收獲和感受?
學生活動:針對自己設計程序的過程與最終作品,回答問題,并談感受。
設計意圖:利用對算法與程序設計基本知識的總結,幫助學生明確算法與程序的概念,便于學生理解記憶;了解學生的編程感悟,便于下節(jié)課深化推進具體的算法教學。
● 教學反思,思維的突破與理解程序本質的現(xiàn)實差距
縱觀整個教學過程,筆者認為本課存在以下一些優(yōu)點與不足。
在整個教學過程中,用問題引領學生主動思考,自主學習和任務驅動都體現(xiàn)了以學生為主體——學生思考,學生實踐。對學生的評價采用學生互評的方式,總結也由學生來回答,都充分體現(xiàn)了學生的主體地位;實例貼近學生生活,以數(shù)學為實例進行推導,貼近學生的學習實踐,能夠讓學生更容易地理解計算機程序,也鍛煉了他們分析問題的邏輯性、條理性;小組合作加強了學生的合作能力和團隊意識,也提高了任務完成的效率,讓學生體會到合作的重要性;采用拓展任務,充分發(fā)揮了學生的個性。
總體的困惑是:學生對計算機程序的本質在理解上有一定的困難,本節(jié)課因時間有限也不能夠深入探究計算機程序,怎樣形象地說明程序的本質及其運行原理還有待思考和完善。另外,學生的編程基礎基本為零,所以在代碼的編寫和VB程序的使用中教師需要明確講解和演示,但是演示過后仍有許多學生對VB的使用還是掌握得不夠好,影響了課堂教學的推進。