王芳
摘 要:從綱要出發(fā),通過具體的教學(xué)實(shí)例闡述如何優(yōu)化教學(xué)方法,引導(dǎo)學(xué)生在程序設(shè)計(jì)變式練習(xí)中領(lǐng)會(huì)具有廣泛遷移意義的知識(shí),培養(yǎng)學(xué)生多樣思維。
關(guān)鍵詞:程序設(shè)計(jì)教學(xué)方法;多樣思維;一題多解
在程序設(shè)計(jì)教學(xué)中對(duì)認(rèn)知結(jié)構(gòu)的整體建構(gòu)要始終放在教學(xué)的首要地位,程序設(shè)計(jì)模塊不是孤立的,知識(shí)的習(xí)得不僅依賴于原有的信息技術(shù)知識(shí),而且依賴于其他方面的知識(shí)與經(jīng)驗(yàn),它們共同構(gòu)成學(xué)習(xí)“程序設(shè)計(jì)”的知識(shí)與能力準(zhǔn)備。
一、一題多解,明白算法的多樣性
在數(shù)學(xué)學(xué)習(xí)中,通常要求一個(gè)問題使用多種解法,這是鍛煉數(shù)學(xué)思維、衡量數(shù)學(xué)能力和素質(zhì)的一個(gè)重要標(biāo)志。同樣在程序教學(xué)中,這種方法也可以促成學(xué)生對(duì)程序設(shè)計(jì)的深刻理解,同時(shí)對(duì)于培養(yǎng)學(xué)生的創(chuàng)新思維、效率思維、計(jì)算思維等都大有裨益。一題多解可以培養(yǎng)學(xué)生從不同角度、不同側(cè)面去分析問題和解決問題,不僅可以激發(fā)學(xué)生的學(xué)習(xí)興趣、拓寬解題思路,還可以豐富教學(xué)內(nèi)容,同時(shí)也使授課變得生動(dòng)、有趣。這類題目以啟發(fā)式為主,學(xué)生在輕松的學(xué)習(xí)氛圍中培養(yǎng)自己的多種思維能力。
二、范例拓展法,推進(jìn)思維的寬度
范例拓展法的顯著表現(xiàn)是教師的教和學(xué)生的學(xué),都是圍繞實(shí)例來完成,使學(xué)生通過積極主動(dòng)地運(yùn)用學(xué)習(xí)資源,進(jìn)行自主探索和互相協(xié)作學(xué)習(xí),在完成教師教的實(shí)例同時(shí),遷移算法完成拓展實(shí)例。它有利于培養(yǎng)學(xué)生的自主學(xué)習(xí)能力和獨(dú)立分析問題、解決問題的能力,它尤其適合程序設(shè)計(jì)教學(xué)。
例如:求1+2+3+4+5+…+99的和,并打印。
拓展:求S=1+(1+2)+(1+2+3)+…+(1+2+3+…+20)的值。(求和的拓展)
拓展:費(fèi)波拉契數(shù)列,第三項(xiàng)是前二項(xiàng)之和,1、1、2、3、5、…,打印前30項(xiàng)。(求和的拓展)
拓展:求1×2×3×4×5…×9的乘積(通過求和拓展到求積)
拓展:求S=1×2+3×4+5×6+…+99×100的值。(求和、求乘積的組合拓展)
范例拓展法在程序設(shè)計(jì)課程的教學(xué)過程中發(fā)揮著越來越重要的作用,一方面,教師通過舉例把知識(shí)點(diǎn)講解得更清楚,還可以進(jìn)一步延伸新的實(shí)例,對(duì)后續(xù)的課程講解做好鋪墊,打好基礎(chǔ);另一方面,學(xué)生在范例的驅(qū)動(dòng)下思考和學(xué)習(xí),能夠幫助他們理解所學(xué)知識(shí)的邏輯關(guān)系和整體結(jié)構(gòu)。
三、問題逐層遞進(jìn),推進(jìn)思維的深度
學(xué)生有兩個(gè)發(fā)展水平,一是現(xiàn)有發(fā)展水平,另一個(gè)是最近發(fā)展區(qū)。最近發(fā)展區(qū)是指學(xué)生僅靠自己的獨(dú)立活動(dòng)不能解決的問題,但經(jīng)教師啟發(fā)、幫助可以達(dá)到的發(fā)展水平。不同思維層次之間是相互關(guān)聯(lián)的,前一層次的學(xué)習(xí)是后一層次的基礎(chǔ),后一層次的學(xué)習(xí)是前一層次的發(fā)展,所以教師預(yù)設(shè)的教學(xué)過程要關(guān)注學(xué)生思維的遞進(jìn)關(guān)系,程序設(shè)計(jì)中的問題要有層次性,既要適合學(xué)生現(xiàn)有的思維水平,又要考慮為下一個(gè)思維階段的發(fā)展奠定基礎(chǔ)。
例如:從交換兩個(gè)變量的值到求最大數(shù)再到數(shù)值的排序。
1.理解交換兩個(gè)變量值的含義
SWAP(A,B)
2.求10個(gè)數(shù)中的最大數(shù)。模擬查找的過程,假設(shè)將第一個(gè)數(shù)設(shè)為最大數(shù),每次用第一個(gè)數(shù)與后面的數(shù)比較,若小于后面的數(shù)則交換兩個(gè)數(shù),否則不交換,重復(fù),一直到與最后一個(gè)數(shù)比較完為止。
MAX=A(1)
RORJ=2 TO 10