駱梅
摘 要:人工智能掀起了下一輪互聯(lián)網(wǎng)變革浪潮的新引擎,人工智能技術(shù)已經(jīng)滲透到各個行業(yè),深刻改變了人們的日常生活。小學(xué)教育作為教育體系中的首要階段,實施人工智能相關(guān)教育就顯得尤為重要和迫切,而作為人工智能學(xué)習(xí)首選的編程語言Python就自然而然地走入我們的視野,從Python在小學(xué)數(shù)學(xué)教育中的應(yīng)用研究出發(fā),探討Python與小學(xué)數(shù)學(xué)教育結(jié)合的可行性,以推動小學(xué)數(shù)學(xué)教育的與時俱進(jìn)。
關(guān)鍵詞:Python;小學(xué);數(shù)學(xué);教育;應(yīng)用
一、可行性分析
很多人可能都會有疑問,小學(xué)生學(xué)習(xí)Python可以學(xué)懂嗎?其實小學(xué)5年級學(xué)生(11歲左右)都可以學(xué)習(xí)Python語言,這個年齡段的孩子思維模式和認(rèn)知能力都已經(jīng)可以接受Python語言課程。一些在IT行業(yè)的名人很多都是從小學(xué)習(xí)編程知識,比如:Uber創(chuàng)始人特拉維斯·卡蘭尼克6歲開始學(xué)習(xí)編程;Google人工智能AlphaGo的創(chuàng)始人德米什·哈薩比斯8歲開始學(xué)習(xí)編程;特斯拉、SpaceX火箭公司創(chuàng)始人埃隆·馬斯克9歲開始學(xué)習(xí)編程;扎克伯格11歲開始學(xué)習(xí)計算機(jī)編程,創(chuàng)辦Facebook;比爾·蓋茨13歲學(xué)習(xí)計算機(jī)編程,創(chuàng)辦微軟;李開復(fù)10歲開始學(xué)習(xí)編程,成為唯一一位在蘋果、微軟、谷歌三大公司擔(dān)任過高管的華人。讓小學(xué)生學(xué)習(xí)Python編程,并不只是要掌握編程的能力,更重要的是可以訓(xùn)練其編程思維,并將其應(yīng)用在具體問題解決上。
二、Python求解小學(xué)數(shù)學(xué)問題的可行性
小學(xué)生學(xué)習(xí)Python編程知識只是一個開始,如何將學(xué)習(xí)到的Python知識應(yīng)用到某些問題的解決上才是最根本的,而在小學(xué)階段將Python編程知識應(yīng)用到求解數(shù)學(xué)問題上是最直接有效的方式。下面我們將使用Python編程知識求解幾個典型的小學(xué)數(shù)學(xué)問題,以說明Python在求解小學(xué)數(shù)學(xué)問題上的可行性。
1.求解雞兔同籠問題
假設(shè)共有雞、兔30只,腳90只,求雞、兔各有多少只?
解題思路:使用窮舉法進(jìn)行求解,雞兔一共30只,那么我們假設(shè)只有1只雞,那么兔29只,這種情況下雞兔的腿數(shù)為:1× ?2+29×4=118,不等于90,那么雞1只,兔29只不符合要求。假設(shè)雞2只,兔28只,這種情況下雞兔的腿數(shù)為:2×2+28×4=116不等于90,那么雞2只,兔28只不符合要求。以此類推,直到雞兔的腿數(shù)等于90時,就可得出雞兔的只數(shù)。Python代碼如下:
for chicken in range (0,30):
rabbit = 30 - chicken
chickenLeg = 2 * chicken
rabbitLeg = 4 * rabbit
if chickenLeg + rabbitLeg == 90:
print("雞{0}兔{1}".format(str(chicken),str(rabbit)))
2.求解猴子吃桃問題
猴子第1天摘下若干個桃子,當(dāng)時就吃了一半,還不過癮,又多吃了一個。第2天早上又將剩下的桃子吃掉一半,又多吃了一個。以后每天早上都吃了前一天剩下的一半,另加一個。到第10天早上再吃的時候,就只剩下一個桃子了。求第1天共摘了多少個桃子。
解題思路:本題要逆向思維思考,第10天還沒吃,就剩1個,說明第9天吃完一半再吃1個還剩1個,假設(shè)第9天還沒吃之前有p個桃子,可得:p÷2×1=1,可得p=4。以此類推,即可算出第1天的桃子數(shù)。在代碼中,我們定義第10天還沒吃之前的桃子數(shù)量為p=1,之后從9至1循環(huán)9次,根據(jù)上述公式反推為p=(p×1)×2可得第1天還沒吃之前的桃子數(shù)量。for循環(huán)中的print()語句是為了驗證推算過程而增加的。Python代碼如下:
p=1
print("第10天吃之前就剩1個桃子")
for i in range(9, 0, -1):
? ?p=(p + 1)*2
? print("第{0}天吃之前還有{1}個桃子".format(i,p))
print("第1天共摘了{(lán)0}個桃子".format(p))
三、存在的困難
雖然將Python編程知識應(yīng)用于解決小學(xué)數(shù)學(xué)問題是可行的,但是將其全面推廣還是存在一些困難的,具體如下所示:
1.基礎(chǔ)設(shè)施問題
地區(qū)差異性導(dǎo)致廣大農(nóng)村地區(qū)的基礎(chǔ)設(shè)施跟不上,有些小學(xué)都沒有統(tǒng)一機(jī)房,導(dǎo)致Python教學(xué)無法正常進(jìn)行,更不用說將其應(yīng)用到具體數(shù)學(xué)問題的求解上。
2.師資問題
小學(xué)師資有限,尤其是農(nóng)村地區(qū),懂Python編程知識的老師少之又少,及時培訓(xùn)老師學(xué)習(xí)Python編程知識也需要一定的時間。
3.教材編寫問題
畢竟在我國推行小學(xué)Python教學(xué)才剛剛起步,我們的教材不像國外那么豐富和成熟,還需要在具體教學(xué)中對教材內(nèi)容進(jìn)行修正和改進(jìn),以適應(yīng)具體的教學(xué)要求,這也在一定程度上阻礙了其推廣。
學(xué)習(xí)Python不像學(xué)習(xí)音樂、美術(shù)那樣會有立竿見影的效果,學(xué)習(xí)Python以及將Python應(yīng)用于數(shù)學(xué)問題的解決上有助于鍛煉學(xué)生的邏輯思維、數(shù)學(xué)能力、創(chuàng)造能力以及解決問題的能力,但這些都需要一個潛移默化、持續(xù)積累的過程,因此,推廣小學(xué)生學(xué)習(xí)Python,并將學(xué)習(xí)到的Python編程知識應(yīng)用在數(shù)學(xué)問題的解決上只是一個開始,我們還需要很長的路要走。
參考文獻(xiàn):
[1]芒努斯·利·海特蘭德.Python基礎(chǔ)教程(第3版)[M].人民郵電出版社,2018-02.
[2]胡宏彪.和孩子一起玩編程[M].人民郵電出版社,2018-01.
[3]薛金星.小學(xué)教材全解[M].北京師范大學(xué)出版社,2018(4).
[4]喬納森·伯格曼,亞倫·薩姆斯.翻轉(zhuǎn)課堂與混合式教學(xué):互聯(lián)網(wǎng)+時代,教育變革的最佳解決方案[M].中國青年出版社,2018-01.
編輯 劉瑞彬