複製鏈接
請複製以下鏈接發送給好友

雞兔同籠

(一種著名數學趣題)

鎖定
雞兔同籠,是中國古代著名典型趣題之一,大約在1500年前,《孫子算經》中就記載了這個有趣的問題。
中文名
雞兔同籠
外文名
Chicken with rabbit cage
類    別
算術題 數學應用題
領    域
數學

雞兔同籠歷史背景

雞兔同籠是中國古代的數學名題之一。 [1]  大約在1500年前,《孫子算經》中就記載了這個有趣的問題。書中是這樣敍述的:
今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?
這四句話的意思是:
有若干只雞兔同在一個籠子裏,從上面數,有35個頭,從下面數,有94只腳。問籠中各有多少隻雞和兔?
這一問題的本質是一種二元方程。如果教學方法得當,可以讓小學生初步地理解未知數和方程等概念,並鍛鍊從應用問題中抽象出數的能力。一般在小學四到六年級時,配合一元一次方程等內容教授。 [2] 
同一本書中還有一道變題:
今有獸,六首四足;禽,四首二足,上有七十六首,下有四十六足。問:禽、獸各幾何?答曰:八獸、七禽。
題設條件包括了不同數量的頭和不同數量的足。

雞兔同籠方法

雞兔同籠古法

《孫子算經》的作者為本題提出了兩種解法:
術曰:上置三十五頭,下置九十四足。半其足,得四十七,以少減多,再命之,上三除下四,上五除下七,下有一除上三,下有二除上五,即得。
又術曰:上置頭,下置足,半其足,以頭除足,以足除頭,即得。
所謂的“上置”,“下置”指的是將數字按照上下兩行擺在籌算盤上。在算籌盤第一行擺上數字三十五,第二行擺上數字九十四,將腳數除以二,此時第一行是三十五,第二行是四十七。用較小的頭數減去較多的半腳數,四十減去三十(上三除下四),七減去五(上五除下七)。此時下行是十二,三十五減十二(下一除上三,下二除上五)得二十三。此時第一行剩下的算籌就是雞的數目,第二行的算籌就是兔的數目。
另一種更簡單的描述方法是:在第一行擺好三十五,第二行擺好九十四,將腳數除以2,用頭數去減半腳數,用剩下的數(我們現在知道這是兔數)減去頭數。這樣第一行剩下的是雞數,第二行剩下兔數。
至於頭多於一個的“禽獸問題”,“孫子”給出的解法如下:
術曰:倍足以減首,餘半之,即獸;以四乘獸,減足,餘半之,即禽。
將腳數乘以兩倍(此時禽腳與禽頭的係數恰好相同),頭數減去兩倍腳數,除以二,得到獸的只數(八隻),獸的只數乘以四(求出獸的腳數),總腳數減去獸的腳數再除以二,得到禽的只數。
如果對照下面的二元方程就會發現,古法相當於是隻在操作方程等號的右半邊,並沒有詳細説明操作的係數代表什麼。於是也只有“心開者”才能觸之即悟了。

雞兔同籠本質解法

本題的推廣“禽獸問題”就是一般的二元線性方程二元一次方程)。
“雞兔同籠”問題則是“禽獸問題”在
條件下的特殊形式。
根據題設條件不同,特徵值a和b可以是整數(雞或兔的腳數)也可以是非整數(某種商品的單價)。
二元方程在初中時期的標準解法是代入法或加減法(也稱高斯消去法)。按此列式解題即可。
當然也可以運用克拉默法則進行“矩陣除法”。計算過程和結果如下。
矩陣乘法,得以下求解公式:

雞兔同籠表象解法

由於小學數學課程標準所限,向小學生使用二元方程解釋該題的解法會遇到大量困難。所以需要準備一些只涉及問題表象的解法。所有表象解法都與該問題的本質有着一定的聯繫。
以下所有解法以古題所涉數字(頭之和為35,腳之和為94,雞有1個頭2只腳,兔有1個頭4只腳)為例。
猜測法
因為“雞數”和“兔數”具有整數性質,可以選擇把所有可能的整數組合列出,對照獲得正確答案。
雞兔同籠數字關係表
雞數
兔數
腿數
35
0
70
……
……
……
26
9
88
25
10
90
24
11
92
23
12
94(正確答案)
22
13
96
通過上文的列表法也可以讓孩子直觀地發現右邊的規律。即“每減去一隻兔子,增加一隻雞,總腳數就會減少兩隻”。反之亦然。
根據這個規律
  • 假設全是雞:2 (只腳/只動物)× 35(只動物) = 70 (只腳)(嚴格按照量綱一致原則標註就如上所示。小學階段只要求標出只,以下按此操作。),雞腳比總腳數少:94 - 70 = 24 (只)。兔子比雞多的腳數:4 - 2 = 2(只),兔子的只數:24 ÷ 2 = 12 (只)雞的只數:35 - 12 = 23(只)。
  • 假設全是兔子:4 × 35 = 140(只),兔子腳比總數多:140 - 94 = 46(只),兔子比雞多的腳數:4 - 2 = 2(只),雞的只數:46 ÷ 2 = 23(只),兔子的只數:35 - 23 = 12(只)
假設法的本質是設雞數或兔數為x,腳數為y,從而有以下關係:
代入y=94,得2x=46,從而x=23
雞有兩翅兩腿,因此籠內翅腿總數為35×4=140只,其中有腿94只,則有翅140−94=46。
故雞有46÷2=23只,兔有35−23=12只。
抬腿法
所有抬腿法的本質都是將二元方程的某種解法編成利於小學生理解的故事加以講述。
方法一
假如讓雞抬起一隻腳,兔子抬起2只腳,還有94÷2=47(只)腳。籠子裏的兔就比雞的腳數多1,這時,腳與頭的總數之差47-35=12,就是兔子的只數。
數學語言描述:方程2除以2,得
,整體減去方程1,.
方法二
假如雞與兔子都抬起兩隻腳,還剩下94-35×2=24只腳 , 這時雞是屁股坐在地上,地上只有兔子的腳,而且每隻兔子有兩隻腳在地上,所以有24÷2=12只兔子,就有35-12=23只雞。
數學語言描述:方程2減去兩倍方程1:
方法三
我們可以先讓兔子都抬起2只腳,那麼就有35×2=70只腳,腳數和原來差94-70=24只腳,這些都是每隻兔子抬起2只腳,一共抬起24只腳,用24÷2得到兔子有12只,用35-12得到雞有23只。
數學語言描述:將方程2的係數拆分:
,將方程1乘以2(只腳/只動物):
,方程2減去方程1,係數化為1,得y=12。

雞兔同籠方程

雞兔同籠的一元一次方程本質是二元方程的代入解法,省略了對方程1移項得y=35-x並代入方程2的步驟。
(一)解:設兔有x只,則雞有(35-x)只。
解得
則雞有:35 - 12 = 23 只
(二)解:設雞有x只,則兔有(35-x)只。
解得
則兔有:35 - 23 = 12(只)
答:兔子有12只,雞有23只。
(注:在設方程的未知數時,通常選擇腿多的動物,這將會使計算較簡便)

雞兔同籠公式

公式1:
(兔的腳數 × 總只數 - 總腳數)÷(兔的腳數 - 雞的腳數)= 雞的只數
總只數 - 雞的只數 = 兔的只數
對應的二元方程操作:
公式2:
(總腳數 - 雞的腳數 × 總只數)÷(兔的腳數 - 雞的腳數)= 兔的只數
總只數 - 兔的只數 = 雞的只數
對應的二元方程操作:
以上兩個公式與”本質解法“中用線性代數方法推算出來的公式完全相等。
公式3:
總腳數 ÷ 雞的腳數 - 總頭數 = 兔的只數
總只數 -兔的只數 = 雞的只數
對應的二元方程操作:
公式4:兔腳數*X + 雞腳數(總數-X)=總腳數 (X = 兔,總數 - X = 雞數。也就是雞兔同籠一元方程的標準形式)。
所有預設公式都是將二元方程右邊的值進行初等變換後的結果直接相加減得到的結果。

雞兔同籠解題思路

雞兔同籠理解

孫子算經-度量衡部分 孫子算經-度量衡部分
中國古代《孫子算經》共三卷,成書大約在公元5世紀。這本書淺顯易懂,有許多有趣的算術題,比如“雞兔同籠”問題:
今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?
題目中給出雉兔共有35只,如果把兔子的兩隻前腳用繩子捆起來,看作是一隻腳,兩隻後腳也用繩子捆起來,看作是一隻腳,那麼,兔子就成了2只腳,即把兔子都先當作兩隻腳的 雞。雞兔總的腳數是35×2=70(只),比題中所説的94只要少94-70=24(只)。
鬆開一隻兔子腳上的繩子,總的腳數就會增加2只,即70+2=72(只),再鬆開一隻兔子腳上的繩子,總的腳數又增加2,2,2,2……,一直繼續下去,直至增加24,因此兔子數:24÷2=12(只),從而雞有35-12=23(只)。
我們來總結一下這道題的解題思路:如果先假設它們全是雞,於是根據雞兔的總數就可以算出在假設下共有幾隻腳,把這樣得到的腳數與題中給出的腳數相比較,看看差多少,每差2只腳就説明有1只兔,將所差的腳數除以2,就可以算出共有多少隻兔。概括起來,解雞兔同籠題的基本關係式是:兔數=(實際腳數-每隻雞腳數×雞兔總數)÷(每隻兔子腳數-每隻雞腳數)。類似地,也可以假設全是兔子。

雞兔同籠思路

"雞兔同籠"是一類有名的中國古算題。最早出現於《孫子算經》中。許多小學算術應用題都可以轉化成這類問題,或者用解它的典型解法--"假設法"來求解。因此很有必要學會它的解法和思路。
例1有若干只雞和兔子,它們共有88個頭,244只腳,雞和兔各有多少隻
解:我們設想,每隻雞都是"金雞獨立",一隻腳站着;而每隻兔子都用兩條後腿,像人一樣用兩隻腳站着,地面上出現腳的總數的一半,·也就是
244÷2=122(只)
在122這個數里,雞的頭數算了一次,兔子的頭數相當於算了兩次。因此從122減去總頭數88,剩下的就是兔子頭數
122-88=34(只),
有34只兔子,當然雞就有54只。
答:有兔子34只,雞54只。
上面的計算,可以歸結為下面算式
總腳數÷2-總頭數=兔子數. 總頭數-兔子數=雞數
上面的解法是《孫子算經》中記載的。做一次除法和一次減法,馬上能求出兔子數,多簡單。能夠這樣算,主要利用了兔和雞的腳數分別是4和2,4又是2的2倍.可是,當其他問題轉化成這類問題時,"腳數"就不一定是4和2,上面的計算方法就行不通。因此,我們對這類問題給出一種一般解法.
如果設想88只都是兔子,那麼就有4×88只腳,比244只腳多了
88×4-244=108(只)
每隻雞比兔子少(4-2)只腳,所以共有雞
(88×4-244)÷(4-2)= 54(只).
説明我們設想的88只"兔子"中,有54只不是兔子。而是雞.因此可以列出公式
雞數=(兔腳數×總頭數-總腳數)÷(兔腳數-雞腳數).
當然,我們也可以設想88只都是"雞",那麼共有腳2×88=176(只),比244只腳少了
244-176=68(只).
每隻雞比每隻兔子少(4-2)只腳,
68÷2=34(只).
説明設想中的"雞",有34只是兔子,也可以列出公式
兔數=(總腳數-雞腳數×總頭數)÷(兔腳數-雞腳數).
上面兩個公式不必都用,用其中一個算出兔數或雞數,再用總頭數去減,就知道另一個數。
假設全是雞,或者全是兔,通常用這樣的思路求解,稱為"假設法".

雞兔同籠例題

例2:“腳”數不是整數的情況:紅鉛筆每支0.19元,藍鉛筆每支0.11元,兩種鉛筆共買了16支,花了2.80元。問紅,藍鉛筆各買幾支?
解:以"分"作為錢的單位.我們設想,一種"雞"有11只腳,一種"兔子"有19只腳,它們共有16個頭,280只腳。
已經把買鉛筆問題,轉化成"雞兔同籠"問題了.利用上面算兔數公式,就有
藍筆數=(19×16-280)÷(19-11)
=24÷8
=3(支).
紅筆數=16-3=13(支).
甚至不用特意將分數轉化成整數,公式也成立:
藍筆數=(0.19×16-2.8)÷(0.19-0.11)
=0.24÷0.08
=3(支)
答:買了13支紅鉛筆和3支藍鉛筆。
對於這類問題的計算,常常可以利用已知腳數的特殊性.例2中的"腳數"19與11之和是30.我們也可以設想16只中,8只是"兔子",8只是"雞",根據這一設想,腳數是
8×(11+19)=240(支)
比280少40.
40÷(19-11)=5(支)
就知道設想中的8只"雞"應少5只,也就是"雞"(藍鉛筆)數是3.
30×8比19×16或11×16要容易計算些。利用已知數的特殊性,靠心算來完成計算.
實際上,可以任意設想一個方便的兔數或雞數。例如,設想16只中,"兔數"為10,"雞數"為6,就有腳數
19×10+11×6=256.
比280少24.
24÷(19-11)=3,
就知道設想6只"雞",要少3只
完整二元方程:
例3:“腳”數不是整數的情況之2:一份稿件,甲單獨打字需6小時完成.乙單獨打字需10小時完成,甲單獨打若干小時後,因有事由乙接着打完,共用了7小時. 甲打字用了多少小時?
解:我們把這份稿件平均分成30份(30是6和10的最小公倍數),甲每小時打30÷6=5(份/小時),乙每小時打30÷10=3(份/小時).
把甲打字的時間看成"兔"頭數,乙打字的時間看成"雞"頭數,總頭數是7."兔"的腳數是5,"雞"的腳數是3,總腳數是30,就把問題轉化成"雞兔同籠"問題了.
根據前面的公式
"兔"數=(30-3×7)÷(5-3)
=4.5,
"雞"數=7-4.5
=2.5
也就是甲打字用了4.5小時,乙打字用了2.5小時。
答:甲打字用了4小時30分.
完整二元方程:
例4:未知量看起來很多的情況:1998年時,父母年齡(整數)和是78歲,兄弟的年齡和是17歲。四年後(2002年)父的年齡是弟的年齡的4倍,母的年齡是兄的年齡的3倍.那麼當父的年齡是兄的年齡的3倍時,是公元哪一年?
解:4年後,兩人年齡和都要加8.此時兄弟年齡之和是17+8=25,父母年齡之和是78+8=86。我們可以把兄的年齡看作"雞"頭數,弟的年齡看作"兔"頭數。25是"總頭數",86是"總腳數"。根據公式,兄的年齡是
(25×4-86)÷(4-3)=14(歲).
1998年,兄年齡是
14-4=10(歲).
父年齡是
(25-14)×4-4=40(歲).
因此,當父的年齡是兄的年齡的3倍時,兄的年齡是
(40-10)÷(3-1)=15(歲).
這是2003年。
答:公元2003年時,父年齡是兄年齡的3倍.
按照”正規“的做法,本題是一個四元方程:
通過數量關係消去兩個未知數,可以把方程變形為”本質解法“中的已知形式,從而代入公式求解。
例5:動物數多於兩種,特徵值不止一種的情況:蜘蛛有8條腿,蜻蜓有6條腿和2對翅膀,蟬有6條腿和1對翅膀。這三種小蟲共18只,有118條腿和20對翅膀.每種小蟲各幾隻?
解:因為蜻蜓和蟬都有6條腿,所以從腿的數目來考慮,可以把小蟲分成"8條腿"與"6條腿"兩種。利用公式就可以算出8條腿的
蜘蛛數=(118-6×18)÷(8-6)
=5(只).
因此就知道6條腿的小蟲共
18-5=13(只).
也就是蜻蜓和蟬共有13只,它們共有20對翅膀。再利用一次公式
蟬數=(13×2-20)÷(2-1)=6(只).
因此蜻蜓數是13-6=7(只).
答:有5只蜘蛛,7只蜻蜓,6只蟬。
三元方程如下:
本例中有8x+6(y+z)=118,先通過換元法將前兩個方程打包成”本質解法“中的已知形式,解得中間元后再將後兩個方程套用公式解得中間元的組成部分各是多少。
例6:有常量干擾的情況:某次數學考試考五道題,全班52人蔘加,共做對181道題,已知每人至少做對1道題,做對1道的有7人,5道全對的有6人,做對2道和3道的人數一樣多,那麼做對4道的人數有多少人?
解:對2道,3道,4道題的人共有
52-7-6=39(人).
他們共做對
181-1×7-5×6=144(道).
由於對2道和3道題的人數一樣多,我們就可以把他們看作是對2.5道題的人((2+3)÷2=2.5).這樣
兔腳數=4,雞腳數=2.5,
總腳數=144,總頭數=39.
對4道題的有
(144-2.5×39)÷(4-2.5)=31(人).
答:做對4道題的有31人。
二元方程如下(有些未知數具有等量關係):
例7:腳數不是正數的情況:某次數學競賽共有10題,答對加4分,答錯或不答扣2分。一位同學得了4分,請問這位同學答對幾題?
解:即使”腳“的數量不是正數,公式仍然可用。
對題數目:
(4-(-2)×10)/(4-(-2))=4(題)
以例1為例 有若干只雞和兔子,它們共有88個頭,244只腳,雞和兔各有多少隻?
以簡單的X方程計算的話,我們一般用設大數為X,那麼也就是設兔為X,那麼雞的只數就是總數減去雞的只數,即(88-X)只。
解:設兔為X只。則雞為(88-X)只。
4X+2×(88-X)=244
上列的方程解釋為:兔子的腳數加上雞的腳數,就是共有的腳數。4X就是兔子的腳數,2×(88-X)就是雞的腳數。
4X+2×88-2X=244
2X+176=244
2X+176-176=244-176
2X=68
2X÷2=68÷2
X=34
即兔子為34只,總數是88只,則雞:88-34=54只。
答:兔子有34只,雞有54只。
參考資料