曹仟慧 陳方林
摘 要:在當(dāng)今大數(shù)據(jù)時代,少兒編程已經(jīng)成為一種趨勢,對于初學(xué)編程的少年兒童來說,從“拖拽編程”起步是最好的選擇。本文介紹了用Scratch編程趣味求解《孫子算經(jīng)》等著作里具有代表性的問題,使學(xué)生掌握編程技術(shù)的同時,讓數(shù)學(xué)變得生動有趣。
關(guān)鍵詞:Scratch; 趣味編程
小學(xué)數(shù)學(xué)是我國基礎(chǔ)教育中一門非常重要的學(xué)科,就其抽象性和語言邏輯嚴(yán)密性讓當(dāng)今小學(xué)生感到枯燥和缺乏興趣。早在2011年,我國最新修訂的小學(xué)數(shù)學(xué)課程標(biāo)準(zhǔn)就強(qiáng)調(diào)把創(chuàng)新教育教學(xué)應(yīng)用到數(shù)學(xué)課堂教學(xué)中,讓課堂更加生動活潑,更能讓學(xué)生實現(xiàn)從被動學(xué)習(xí)到主動學(xué)習(xí)的過渡。[1]Scratch作為一種可視化編程軟件, 其類似積木的指令操作更簡單易懂、簡潔直觀的界面對于青少年來說很容易上手操作,更能夠吸引學(xué)生注意力,提高學(xué)生學(xué)習(xí)興趣,成為眾多學(xué)校進(jìn)行創(chuàng)新教育教學(xué)的主要工具。《孫子算經(jīng)》是我國古代優(yōu)秀的數(shù)學(xué)經(jīng)典名著之一,是我國古人用他們的聰明智慧總結(jié)出的寶貴的數(shù)學(xué)精品,在學(xué)習(xí)古代文化成為陣陣?yán)顺钡慕裉?,小學(xué)生有必要學(xué)習(xí)和了解《孫子算經(jīng)》等一些著作里面的經(jīng)典問題,用Scratch編程趣味求解《孫子算經(jīng)》等著作,使枯燥的數(shù)學(xué)變得生動有趣。
一、 Scratch研究現(xiàn)狀
在當(dāng)前,大多數(shù)創(chuàng)客教育者對Scratch主要有兩種趨勢:一種是將此軟件作為程序設(shè)計工具用于編程方面,另一種就是應(yīng)用到課堂教學(xué)中,讓課堂更加生動。
雖然說現(xiàn)在的Scratch在編程領(lǐng)域越來越火,但是就目前來看,就Scratch對于數(shù)學(xué)方面的貢獻(xiàn)研究的人很少,尤其是運(yùn)用于古代數(shù)學(xué)研究。
二、應(yīng)用實例
雞兔同籠出自《孫子算經(jīng)》,是該書卷下第31題,這道題后來傳到日本就變成了“鶴龜算”。書中這樣敘述了該題:“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?”意思是:有若干只雞、兔同在一個籠子里,如果從上面數(shù),有35個頭,如果從下面數(shù),有94只腳。求出籠中各有幾只雞和兔?下圖(圖一)是我們運(yùn)用Scratch進(jìn)行求解所編寫的腳本:
? ? ?Scratch同C語言一樣,只要我們編寫好腳本,理清邏輯關(guān)系,就可以得到任何一種數(shù)據(jù)發(fā)生變化的雞兔同籠問題的解,而雞兔同籠的邏輯關(guān)系就是把雞的個數(shù)從1開始一直往后試,直到滿足條件為止,當(dāng)然也可以修改程序找到滿足所有條件的解。這樣求解的好處就是能讓孩子找到若干組解而且可以享受到以一題敵萬題的樂趣。
更相減損術(shù)出自《九章算術(shù)》,書中這樣敘述了該方法:“可半者半之,不可半者,副置分母、子之?dāng)?shù),以少減多,更相減損求其等也,以等數(shù)約之”,現(xiàn)代語言描述如下:
第一步:任意給定兩個正整數(shù),如果都是偶數(shù),先除以二,若不是則執(zhí)行第二步;
第二步:以較大的數(shù)減較小的數(shù),接著把所得的差與較小的數(shù)相比較,并以大數(shù)減小數(shù),繼續(xù)這個操作,直到所得到的減數(shù)與差相等為止,實際上就是輾轉(zhuǎn)相除法。
這一個方法相對于小學(xué)生理解起來較有難度,左圖(圖二)是我們運(yùn)用Scratch進(jìn)行求解所編寫的腳本:
求的是對十五分之負(fù)十二進(jìn)行約分,在這個腳本編譯中,最重要的是怎樣構(gòu)建中間變量和怎樣實現(xiàn)循環(huán),孩子們?nèi)绻黄屏诉@一點,那么他們的邏輯思維能力和編程能力都會得到極大提升,在數(shù)學(xué)思維上也會有很大的幫助。
? ? ?三、結(jié)束語
對于初學(xué)編程的少年兒童來說,從“拖拽編程”起步是最好的選擇?!蓖献Ь幊獭笔且环N基本的技術(shù),可以讓你通過拖拽塊創(chuàng)建代碼,而不是手動編寫基于文本的代碼。也就是說,我們可以在不細(xì)究語言語法格式的情況之下,很容易地理解編程原理,Scratch無疑是最好的選擇。《孫子算經(jīng)》和《九章算術(shù)》是我國古代較為普及的兩本數(shù)學(xué)名著, 并且一些趣味性的題目在后世廣為流傳。而雞兔同籠問題和更相減損術(shù)在其中又具有代表性。用Scratch編程趣味求解《孫子算經(jīng)》等著作,使枯燥的數(shù)學(xué)變得生動有趣。還也可以讓學(xué)生們在學(xué)習(xí)的過程中感受古人的聰明才智,激發(fā)學(xué)生的學(xué)習(xí)主動性、積極性和學(xué)習(xí)興趣。
[參考文獻(xiàn)]
[1]李建英. Scratch在小學(xué)數(shù)學(xué)課程教學(xué)中的應(yīng)用研究[J]. 辦公自動化, 2018, 23(24):37.
(作者單位:重慶師范大學(xué)物理與電子工程學(xué)院,重慶 401331)