? ? ? ? “雞兔同籠問題”是我國(guó)古書《孫子算經(jīng)》中著名的數(shù)學(xué)問題装黑,其內(nèi)容為:“今有雉(雞)兔同籠恢恼,上有三十五頭,下有九十四足胰默。問雉兔各幾何场斑。”這個(gè)其實(shí)就是大家熟悉的“雞兔同籠”問題牵署,翻譯成白話文就是:
今有若干只雞和兔子關(guān)在同一個(gè)籠子里漏隐,從上面數(shù),有35個(gè)頭奴迅;從下面數(shù)青责,有94只腳。問籠子里各有幾只雞和兔子取具?
主要的數(shù)量關(guān)系:
? ? ? 如果假定全部是雞脖隶,那么① 兔的只數(shù)=(總足數(shù)-每只雞的足數(shù)×總頭數(shù))÷(每一只雞與兔足數(shù)的差)簡(jiǎn)寫就是兔的只數(shù)=(總足數(shù)-2×總頭數(shù))÷2② 雞的總只數(shù)=總頭數(shù)-兔的只數(shù)
? ? ? 如果假定全部是兔,則① 雞的只數(shù)=(每只兔的足數(shù)×總頭數(shù)-總足數(shù))÷(每一只雞與兔足數(shù)的差)簡(jiǎn)單寫就是雞的只數(shù)=(4×總頭數(shù)-總足數(shù))÷2② 兔的只數(shù)=總頭數(shù)-雞的只數(shù)
? ? ? 這道題的解法有很多暇检,這次我們?cè)囍镁幊誊浖cratch來解产阱。Scratch是由MIT(麻省理工學(xué)院)米切爾·瑞斯尼克(Mitch Resnick)教授帶領(lǐng)的“終身幼兒園團(tuán)隊(duì)”(Lifelong Kindergarten Group)開發(fā)的一款積木式少兒編程軟件。通過類似拖動(dòng)積木塊的方式和使用軟件中的素材块仆,可以很容易地創(chuàng)造有趣的動(dòng)畫构蹬、游戲,以及控制機(jī)器人和電子設(shè)備等悔据,在創(chuàng)作的過程中不僅習(xí)得了Science(科學(xué)), Technology(技術(shù)), Engineering(工程), Arts(藝術(shù)), Maths(數(shù)學(xué))等多個(gè)領(lǐng)域的知識(shí)庄敛,而且可以培養(yǎng)邏輯思維能力、觀察能力科汗、創(chuàng)新能力和想象力藻烤。
? ? ? Scratch官網(wǎng) https://scratch.mit.edu/Scratch。官網(wǎng)上邊头滔,可以使用網(wǎng)頁(yè)進(jìn)行Scratch編程隐绵,還可以分享作品。通過類似組合積木的方式制作程序拙毫,Scratch提供很多有趣的聲音和圖片依许,也可以自己錄制聲音、涂鴉和上傳圖片缀蹄,自由創(chuàng)作峭跳。孩子制作的作品可以發(fā)布到Scratch官方網(wǎng)站上膘婶,通過網(wǎng)絡(luò)被無數(shù)人看到,也可以在網(wǎng)站上查看全世界各個(gè)國(guó)家的孩子們發(fā)布的作品蛀醉。
所以在開始之前悬襟,我們需要先明白一個(gè)問題:我們?yōu)槭裁匆獙W(xué)數(shù)學(xué),它和編程有何關(guān)系拯刁?
? ? ? 中科院院士脊岳、數(shù)學(xué)教授李大潛給出了答案:數(shù)學(xué)能夠提高我們的素質(zhì)和能力,這些素質(zhì)和能力包括:嚴(yán)密的邏輯思維能力垛玻、高度的抽象思維能力割捅、自覺形成數(shù)量觀念、讓我們變得更細(xì)心帚桩。
數(shù)學(xué)和編程的關(guān)系
1. 編程所需要的很多能力和數(shù)學(xué)是相通的亿驾。比如邏輯思維、模式識(shí)別等≌撕浚現(xiàn)在機(jī)器學(xué)習(xí)用到的算法莫瞬,其本質(zhì)還是數(shù)學(xué)模型計(jì)算問題。
2. 編程能夠幫助孩子更好地理解數(shù)學(xué)抽象概念郭蕉。孩子們可以通過編程將抽象的數(shù)學(xué)概念轉(zhuǎn)化為看得見的疼邀、會(huì)動(dòng)的圖像。
例如最常用的函數(shù)召锈,書本上的概念理解起來很抽象檩小,通過編程就可以在計(jì)算機(jī)上展示出來
3.編程能夠強(qiáng)化孩子的數(shù)學(xué)能力。如果孩子想用代碼建造飛機(jī)烟勋,那就要用到各種各樣的數(shù)學(xué)知識(shí)规求,并且還要調(diào)用抽象思維的能力。
? ? ? 數(shù)學(xué)和編程關(guān)系緊密卵惦,具備數(shù)學(xué)+編程的人優(yōu)勢(shì)會(huì)更大阻肿,因?yàn)樗鼈冎g的聯(lián)系密切相關(guān)。
下面我們進(jìn)入正題沮尿,看scractch如何解這道經(jīng)典的小學(xué)奧數(shù)題丛塌。
【編程解題】
第一步:添加角色
? ? ? 右下角的角色區(qū)添加角色,分別是公雞畜疾、兔子赴邻、小貓各一個(gè):
第二步:設(shè)置邏輯運(yùn)算
? ? ? 小貓角色的腳本要根據(jù)已知條件算出結(jié)果,并在界面顯示出結(jié)果(白框里的文字)啡捶,我們輸入題目中已知條件:
? ? ? 我們要求雞和兔子的數(shù)目姥敛,就是要解出兩個(gè)未知數(shù),把它轉(zhuǎn)化為代碼語(yǔ)言瞎暑,這就需要?jiǎng)?chuàng)建兩個(gè)變量來代表這兩個(gè)未知數(shù)(兔子和雞)彤敛。
現(xiàn)在根據(jù)已知條件輸入兔+雞=35与帆,兔x4+雞x2=94,注意左邊的綠色框墨榄,里面包含了很多邏輯關(guān)系:“且”玄糟、“或”等等。孩子在這一步要思考:這兩個(gè)式子是缺一不可還是滿足一個(gè)就行呢袄秩?這就是對(duì)孩子邏輯思維最好的訓(xùn)練阵翎。
? ? ? 接著輸入變量(發(fā)散下思維:分析一個(gè)問題時(shí),教會(huì)孩子找出它的變量之剧,問題就會(huì)好解決很多):
完整代碼如下:
? ? ? 雞和兔要執(zhí)行的任務(wù)是:當(dāng)它們接受到“兔子你說郭卫,你有多少只”和“大公雞,你說你有多少只”指令時(shí)猪狈,就要分別“喊出”結(jié)果,兔子的代碼是這樣的:
雞的代碼是這樣的:
最后的結(jié)果是:
? ? ? 在解題的過程中辩恼,孩子對(duì)邏輯關(guān)系“且”雇庙、“或”等有了更深的了解,對(duì)變量也會(huì)有初步認(rèn)識(shí)灶伊,這就是構(gòu)建邏輯思維的必要步驟疆前,非常有助于孩子以后高效地處理任何問題。
這就是數(shù)學(xué)+編程的強(qiáng)大之處聘萨。
【試一試】
《孫子算經(jīng)》中的“雞兔同籠”問題后來飄洋過海傳到了日本竹椒。
? ? ? 在1815年日本人坂部廣胖編纂的《算法點(diǎn)竄指南錄》一書中把這個(gè)問題以“龜鶴算”為名提出:“有一群鶴和烏龜都圈在一個(gè)籠子里。從上邊數(shù)腦袋是三十五個(gè)米辐,從下邊數(shù)腳是九十四只胸完。問烏龜和鶴各是多少只?”
? ? ? 這里只是把雞兔換成了龜鶴翘贮,像這樣的問題還是比較簡(jiǎn)單的赊窥,你也用神奇的Scratch試試吧!
歡迎關(guān)注微信公眾號(hào)了解更多小學(xué)數(shù)學(xué)狸页、編程知識(shí)