国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

從1至100的累加看計(jì)算思維的教學(xué)實(shí)現(xiàn)

2017-05-18 16:29王榮良
中國(guó)信息技術(shù)教育 2017年9期
關(guān)鍵詞:高斯例子編程

王榮良

編程學(xué)習(xí)是進(jìn)入計(jì)算機(jī)專業(yè)領(lǐng)域的入門課程。大學(xué)一年級(jí)計(jì)算機(jī)專業(yè)的學(xué)生都會(huì)學(xué)習(xí)一門程序設(shè)計(jì)語(yǔ)言的課程,他們?cè)趯W(xué)會(huì)一種計(jì)算機(jī)高級(jí)語(yǔ)言的同時(shí),也大致理解了計(jì)算解決問(wèn)題的一般過(guò)程。我國(guó)基礎(chǔ)教育也開設(shè)了類似的程序設(shè)計(jì)課程,該課程從早期的BASIC語(yǔ)言、LOGO語(yǔ)言,到后來(lái)的Pascal語(yǔ)言、VB、VC,直到現(xiàn)在流行的Scratch、Pathon,已經(jīng)有30多年的歷史了。在這30多年中,有關(guān)中小學(xué)生開展計(jì)算機(jī)編程學(xué)習(xí)教育價(jià)值的爭(zhēng)論一直就沒(méi)有停息過(guò)。當(dāng)前,計(jì)算思維教育的興起給中小學(xué)生學(xué)習(xí)編程提供了新的價(jià)值取向。顯然,計(jì)算思維作為計(jì)算機(jī)科學(xué)的學(xué)科思維,主要是在計(jì)算機(jī)專業(yè)的知識(shí)與技能學(xué)習(xí)過(guò)程中滲透的。因此,編程學(xué)習(xí)也應(yīng)該是計(jì)算思維教育的有效途徑。但這并不等于說(shuō),學(xué)習(xí)編程就一定能培養(yǎng)計(jì)算思維。

在程序設(shè)計(jì)“循環(huán)結(jié)構(gòu)”教學(xué)中,有一個(gè)經(jīng)典題例,就是“1+2+3+……+100”的求和。如果在高中階段學(xué)習(xí)該知識(shí)點(diǎn),學(xué)生們都已經(jīng)知道了高斯公式,并且還會(huì)質(zhì)疑這一算法為何不用高斯公式而要用笨拙的循環(huán),那么,是不是可以說(shuō),用循環(huán)就是體現(xiàn)計(jì)算機(jī)解決問(wèn)題的思路,用循環(huán)就是體現(xiàn)計(jì)算思維呢?教師不妨站在計(jì)算機(jī)科學(xué)基礎(chǔ)概念的角度,對(duì)計(jì)算機(jī)進(jìn)行“1+2+3+……+100”的求和操作進(jìn)行細(xì)致的分析。

第一,這是編程學(xué)習(xí)中的一個(gè)典型例子,但這個(gè)典型例子引用的初衷并不是從計(jì)算思維教育的角度出發(fā)的。其典型之處在于為講解循環(huán)結(jié)構(gòu)提供方便,非常直觀地提供了循環(huán)結(jié)構(gòu)的基本要素,即循環(huán)體和循環(huán)條件。例子本身很容易理解,是否正確實(shí)現(xiàn)也很容易判斷。因此,該例子的教學(xué)功能是學(xué)習(xí)一個(gè)典型累加求和的算法,同時(shí)也幫助學(xué)生理解循環(huán)結(jié)構(gòu)。僅就這點(diǎn)而言,這個(gè)例子對(duì)計(jì)算機(jī)執(zhí)行循環(huán)的過(guò)程的技術(shù)細(xì)節(jié)理解有幫助,但不能算是計(jì)算思維的典型例子。

第二,關(guān)于循環(huán)結(jié)構(gòu)實(shí)施“1+2+3+……+100”求和的價(jià)值判斷問(wèn)題。評(píng)價(jià)一種計(jì)算的優(yōu)劣,時(shí)間開銷和空間開銷是兩個(gè)重要指標(biāo)。對(duì)于已知計(jì)算量的運(yùn)算,如本例中的99次求和運(yùn)算,是可以用順序結(jié)構(gòu)來(lái)完成的。而站在計(jì)算開銷的角度來(lái)考慮,用順序結(jié)構(gòu)來(lái)解決,時(shí)間開銷是小的,但程序代碼所占的存儲(chǔ)容量較大。那么,為什么要用循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn)呢?一方面,是因?yàn)楹芏鄳?yīng)用是不能用順序結(jié)構(gòu)來(lái)簡(jiǎn)單代替的;另一方面,是因?yàn)椴槐阌谌说乃季S和表達(dá)。要讓計(jì)算機(jī)為人類做事,就需要讓計(jì)算機(jī)知道做什么,這就需要簡(jiǎn)約、明確地告訴計(jì)算機(jī),這種表達(dá)方式是為人服務(wù)的,也是人的思維。這種形式化表達(dá)是計(jì)算思維的一部分,這也從一個(gè)側(cè)面說(shuō)明計(jì)算思維是人的思維,而不是計(jì)算機(jī)的。

第三,在實(shí)際應(yīng)用中,如果已知高斯公式,那么應(yīng)該用高斯公式來(lái)計(jì)算,還是用這種求和的方法來(lái)計(jì)算呢?答案是肯定的,那就是用高斯公式來(lái)計(jì)算。因?yàn)橛酶咚构絹?lái)計(jì)算,就不需要用累加的方法來(lái)實(shí)現(xiàn),降低了計(jì)算的復(fù)雜度,這也是計(jì)算學(xué)科追求的目標(biāo)。這一點(diǎn)在教學(xué)過(guò)程中應(yīng)該向?qū)W生交代清楚,不能讓他們產(chǎn)生這樣的錯(cuò)誤理解:不用高斯公式,而采用求和的笨辦法,是為了滿足計(jì)算機(jī)的需求,計(jì)算機(jī)總是用最原始的方法來(lái)解決問(wèn)題的。事實(shí)上,如果一個(gè)計(jì)算問(wèn)題有現(xiàn)成的解析公式,那么計(jì)算機(jī)肯定用現(xiàn)成公式。用高斯公式來(lái)表達(dá)“1+2+3+……+100”的求和,是一種建模的過(guò)程。這是在計(jì)算公式層面上的建模,而建模也是計(jì)算思維的一部分。

第四,同樣的問(wèn)題,如果學(xué)生并不知道高斯公式,那么教師教學(xué)過(guò)程的開展可能有兩條途徑:①采用累加求和的方式用循環(huán)結(jié)構(gòu)實(shí)現(xiàn);②先推導(dǎo)出高斯公式,然后用高斯解析式,直接用賦值語(yǔ)句編程。用累加方法還是用公式計(jì)算,取決于人的需要,或者說(shuō)哪種方式更能為人解決問(wèn)題提供便捷。這兩種教學(xué)的方式,體現(xiàn)了計(jì)算思維不同的側(cè)重點(diǎn):①在于循環(huán)結(jié)構(gòu)的形式化表達(dá);②對(duì)有待解決問(wèn)題的抽象和數(shù)學(xué)建模的過(guò)程。當(dāng)然,有一點(diǎn)還是需要注意的,就是在教學(xué)過(guò)程中推導(dǎo)高斯公式所花費(fèi)的開銷。如果需要花費(fèi)相對(duì)比較多的時(shí)間和精力去推導(dǎo)高斯公式,那么整個(gè)解決求和問(wèn)題的教學(xué)過(guò)程就成了數(shù)學(xué)課,而不是程序設(shè)計(jì)課。

第五,有一些例子很難用數(shù)學(xué)解析式來(lái)表達(dá)答案,但可以用循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn)。例如,上海高中信息科技教材中有關(guān)“循環(huán)結(jié)構(gòu)”的典型例子:一張單據(jù)上一個(gè)5位數(shù)字組成的編號(hào),其千位數(shù)和百位數(shù)處已變得模糊不清,只知道這個(gè)5位數(shù)是57或67的倍數(shù),求這個(gè)滿足條件的5位數(shù)。這個(gè)問(wèn)題可以通過(guò)兩重循環(huán)枚舉算法來(lái)解決。但對(duì)于另外一個(gè)形式的問(wèn)題——求解一元二次方程,如果已知存在整數(shù)解和解的范圍,那么可以用循環(huán)的方法來(lái)解決;如果學(xué)生已經(jīng)學(xué)習(xí)了一元二次方程的求解公式,那么應(yīng)該直接用公式,使用解析法來(lái)求解,因?yàn)檫@種方法更直接,效率更高。更進(jìn)一步,針對(duì)“雞兔同籠”的問(wèn)題,對(duì)小學(xué)生而言,可以用枚舉的方法來(lái)解決,這是一個(gè)典型的發(fā)揮計(jì)算機(jī)特長(zhǎng)彌補(bǔ)人的智力的解決問(wèn)題的方法,在培養(yǎng)學(xué)生應(yīng)用計(jì)算機(jī)解決問(wèn)題的能力的同時(shí),也反映出利用計(jì)算機(jī)解決問(wèn)題這一思想,即讓計(jì)算機(jī)用構(gòu)造的方法通過(guò)簡(jiǎn)單重復(fù)計(jì)算來(lái)解決人類復(fù)雜的智力問(wèn)題;反之,如果讓學(xué)生先學(xué)習(xí)推導(dǎo)反映“雞兔同籠”問(wèn)題的方程式,然后用解析法由計(jì)算機(jī)來(lái)實(shí)現(xiàn),那么,這主要就是考驗(yàn)學(xué)生的奧數(shù)技能了。

綜上所述,用循環(huán)的方法實(shí)現(xiàn)“1+2+3+……+100”的累加求和,是一個(gè)用于編程學(xué)習(xí)的典型例子,但不能算是計(jì)算機(jī)實(shí)際應(yīng)用的典型例子,因?yàn)樵趯?shí)際程序?qū)崿F(xiàn)中,一般只會(huì)在已有循環(huán)結(jié)構(gòu)實(shí)現(xiàn)其他功能的情況下用這種方法,很少會(huì)專門編寫循環(huán)語(yǔ)句只為單一累加求和。其實(shí),更為典型的應(yīng)用是計(jì)數(shù)器,即i=i+1的實(shí)現(xiàn),在循環(huán)體中計(jì)算循環(huán)次數(shù),這是一個(gè)將人解決問(wèn)題的方法用計(jì)算機(jī)來(lái)實(shí)現(xiàn)的實(shí)例。

從計(jì)算思維教育的角度出發(fā),其關(guān)鍵在于能對(duì)需要解決的問(wèn)題進(jìn)行抽象,形成計(jì)算機(jī)能夠理解的形式化表達(dá),并且讓計(jì)算機(jī)自動(dòng)地去計(jì)算。至于是用循環(huán)結(jié)構(gòu)累加實(shí)現(xiàn),還是用高斯公式來(lái)編程序,則取決于完成這一計(jì)算的工作基礎(chǔ)以及價(jià)值判斷,這兩種實(shí)現(xiàn)方法都能體現(xiàn)計(jì)算思維。

在計(jì)算思維成為熱點(diǎn)的當(dāng)下,在大規(guī)模開展計(jì)算思維教育的時(shí)刻,教師需要對(duì)計(jì)算思維的本質(zhì)和細(xì)節(jié)仔細(xì)研究,而不是簡(jiǎn)單地把編程教育理解成計(jì)算思維教育。周以真教授提出的“計(jì)算思維是運(yùn)用計(jì)算機(jī)科學(xué)的基礎(chǔ)概念進(jìn)行問(wèn)題求解、系統(tǒng)設(shè)計(jì),以及人類行為理解等涵蓋計(jì)算機(jī)科學(xué)之廣度的一系列思維活動(dòng)”不是一句空洞的話,而是基于對(duì)計(jì)算機(jī)科學(xué)基礎(chǔ)知識(shí)和基本理論的理解。對(duì)中小學(xué)生而言,學(xué)習(xí)Word、Excel等應(yīng)用軟件的使用,只是體驗(yàn)了計(jì)算機(jī)技術(shù)給人們生活、學(xué)習(xí)帶來(lái)的便捷,而學(xué)習(xí)計(jì)算機(jī)編程,則是為理解計(jì)算機(jī)學(xué)科這個(gè)神秘世界打開了一扇小門。教師若要把計(jì)算思維有效地傳達(dá)給學(xué)生,讓學(xué)生在學(xué)習(xí)計(jì)算機(jī)學(xué)科知識(shí)的前提下接受計(jì)算思維教育,就要對(duì)計(jì)算機(jī)學(xué)科知識(shí)有一個(gè)清晰的認(rèn)識(shí),對(duì)計(jì)算過(guò)程有一個(gè)明確的判斷,對(duì)計(jì)算思維有全面而深刻的理解。

猜你喜歡
高斯例子編程
玩游戲?qū)W編程,Blockly Games上手玩
紡織機(jī)上誕生的編程
數(shù)學(xué)王子高斯
編程屋完成數(shù)百元萬(wàn)天使輪融資
學(xué)編程,先畫畫
動(dòng)腦算算題
如此樂(lè)觀
猴哥來(lái)了
商界求生