鄒劍霞
摘要:算法與程序設計是浙江省高考技術學科的考試內容,從2020年1月開始該部分內容在信息技術學科中分值占比由原來的36%增加至52%。其難度與廣度也都有所提升,是信息技術學科教學的重難點。疫情當下的高考網絡復習課中,筆者一直在思考,如何讓學生真正理解算法,掌握扎實的算法知識?如何培養學生獨立思考、不畏懼冗長程序的心理?如何留住學生,避免學生網絡掛機?
關鍵詞:高考復習;程序設計;網絡授課
中圖分類號:G632.0文獻標識碼:A文章編號:1992-7711(2020)04-0174
一、問題的提出
首先,2014年9月9日,《浙江省深化高校考試招生制度綜合改革試點方案》正式頒布,技術學科正式加入高考科目。2020年1月開始算法部分占比由原來的36%增加至52%,以此強化算法部分考點的比重。技術選考已組織6次,信息技術學科試卷的題型在前五次都相對比較固定。在2020年1月的選考中首次題型變革也是遵循考綱而變。其中不論是題型變革前或后,程序設計題一直是歷年考試中大部分學生難以攻克的難點和痛點。
其次,程序題的分值很大,是每位考生必爭之分。那么在當前特殊情形下,網絡授課的高三復習課中,如何保證這樣有難度的內容,學生能夠在沒有監督的情況下依然能夠堅持完成課堂任務。如何讓學生在鞏固的基礎之上有所進步?如何培養學生獨立思考,并真正地理解算法?
本文將以《自定義函數》一課為例探討疫情之下如何保證高考中算法復習的效率與質量。本節課的教學目標是使學生能夠正確運用自定義函數,并理解函數功能。
二、教學實踐
1.概念導入,直奔主題
上課伊始,筆者就直接闡述自定義函數概念:一個較大的程序一般分為若干個程序模塊,自定義函數就是一段完成特定功能的程序模塊,且同一個函數可以被多次調用(直接通過自定義函數的含義導入本節課主題)。然后通過PPT展示自定義函數的格式,通過快速的自定義函數格式的復習之后,展示對應的練習。通過這種單刀直入的形式直奔主題。
2.實踐演練,復習鞏固
例1.在VB中,設已定義函數過程f,它有三個實型傳值參數。設a,b,c為實型變量,則下列能調用該函數的語句是?A. f;B. f(a+ b,b+c);C. f(a+b,b+c,c+a);D. fa+b,b+c,c+a。
例2.有如下VB自定義函數:Function f(i As Single)As Boolean;If i<= 0 Then f = True Else f = False;End Function;執行語句s = f(-0.4)后,邏輯型變量s的值是?A.0;B. 1;C. True;D. False。
例3.編寫一個將十進制數轉換為二進制的VB自定義函數,完成劃線處應填的語句。Function dTOb(x As Integer) As String,Dim s As String,Do While x > 0,If x Mod 2=0 Then s=“0”Else s=“1”①,x= x \2,Loop,End Function。
以上一、二兩道題的設計中,第一題主要針對自定義函數的參數的使用,第二題則針對函數返回值的數據類型,這兩道題考查學生自定義函數的基本格式的掌握,大部分學生能夠得出正確答案,所以在解析中,筆者直接解釋重點,很快完成這兩道題。那么接下來的第三題則是結合簡單的進制轉換考查學生對自定義函數中獲取函數返回值語句的使用。讓學生完成填空(dTOb= s+dTOb)。到此為止,三道題都注重學生掌握自定義函數的格式。
第四題,程序運行時,若在文本框Text1中輸入9,文本框Text2中顯示的內容是?這道題我們在第三題的基礎之上加了一段簡短的過程,在上一道題的基礎之上深入了一點點,這樣學生能夠很快得到程序運行的結果,從而將重點放在這道題要考查的學生對過程中調用自定義函數的程序運行步驟。通過這道題,我們用動畫的形式,向學生詳細展示了調用自定義函數是程序運行的具體過程,不為學生知識點留一點死角。到這道題結束,自定義函數使用的要點都通過練習的形式讓學生復習了一遍,接下來的第五題,則是一道字符串與自定義函數的應用題。
第五題中學生的答案主要集中在A、D兩個選項中,由此說明學生對自定義函數的調用能夠理解,而之所以選A是因為忽略了過程中字符的反向連接。像這樣的問題學生一點就通,也不會阻礙學生繼續前進。
第六題是一道遞歸的易錯題,這道題中包含了遞歸的知識點,并且同時是一道考察自定義函數數據類型的易錯題,看似簡單,實則有陷阱,也是一道學生“能做會錯卻一點即通”的題目,通過這道題復習自定義函數知識點,并考察學生對遞歸的理解。學生主要有A、D兩種答案,說明學生對遞歸的算法是理解的,但是選D的同學忽視了返回值的數據類型。到此為止,學生在一次一次成功與小失敗中跌宕起伏也不乏收獲點樂趣,至少我們在努力做到不打擊學生的同時讓學生有勇氣繼續做下去。
這節課主要以學生做題的形式復習自定義函數,總體上達成目標,課堂學生也有及時的相應反饋,這些反饋表明學生有在思考,在認真地完成課堂任務。筆者認為這就是一節課需要達成的效果。當然也會存在一些不足,筆者將會在接下來的教學中繼續探索與思考。
3.任務的布置
在課程的最后,我們一定要明確課后任務布置的具體情況,因為網絡中,學生很容易忽視課后作業情況,所以,我們在課堂上需要明確告知學生具體在哪個平臺,什么時間提交作業,并以PPT的形式呈現。課后任務的內容主要注重基礎知識點的復習與鞏固,不易題目太長很難,否則做出來的效果也會很差。
三、課堂綜述
作為復習課,不需要過多的花里胡哨的導入,為下面的正題節約更多的時間,在教學內容的安排上,更側重基礎知識。作為網絡課堂我們主要考慮到,其一,算法與程序設計本身是難點,即便是在教室里上課對學生來說完成一道較長的程序題也是非常有難度的。那么面對整天需要通過手機、電腦上課的學生,長時間面對電子產品本身是一件很疲勞的事情。其二,學生在家沒有周圍環境的約束,捧著手機還要求他認真聽課,這本身就是需要的耐心和毅力的事情。其三,通過電子屏幕做題與在紙面上做題還是有很大的區別的,速度和效率都會慢很多。綜合這些情況,我們在算法與程序設計教學中應遵循以下幾點。一是內容不宜難,二是程序不宜長。由于網上看題的速度本身慢,所以采用短程序的形式,學生更容易接受。不像在教室,有教師和周圍環境的約束,學生比較能夠靜坐去探索難題,而在網絡課堂上,我們應該選擇大部分學生比較能夠接受的難度內容,所以要以基礎性的內容考查為重點,讓學生能夠獨立思考完成,避免學生畏難而掛機,在課程一步一步深入的情況下,慢慢的加大點難度。學生只有在認為自己能夠獨立完成該任務的情況下,才會愿意獨立的去努力思考完成任務。在學生思考問題的時候,教師在網絡的這頭應該相信學生,給與學生思考的時間與空間。教師可根據學生答題情況,實時有針對性的給予學生及時的引導。經過實踐在這樣的設計之下,學生在網絡課堂學習時的主動反饋率會更高,因此在線率也自是更高,由此學習的效率是不是也更高了。
教無定法,但在當前的情形下,針對算法與程序設計這塊內容的復習課中,筆者認為我們重點要做到以下的幾點:直奔主題,抓基礎,重短程序,降低難度留住學生。
(作者單位:浙江省杭州市瓶窯中學310000)