雞兔同籠的簡便演算法,雞兔同籠的問題 c語言怎麼樣編寫

2021-08-20 11:15:04 字數 2806 閱讀 2468

1樓:我是一個麻瓜啊

雞兔同籠的簡便演算法:假設法。

舉例如下:

有若干只雞兔同在一個籠子裡,從上面數,有35個頭,從下面數,有94只腳。求籠中雞和兔的只數。

1、假設全是雞:2×35=70(只)

雞腳比總腳數少:94-70=24 (只)

兔子比雞多的腳數:4-2=2(只)

兔子的只數:24÷2=12 (只)

雞的只數:35-12=23(只)

2、假設全是兔子:4×35=140(只)

兔子腳比總數多:140-94=46(只)

兔子比雞多的腳數:4-2=2(只)

雞的只數:46÷2=23(只)

兔子的只數:35-23=12(只)

2樓:

如果先假設它們全是雞,於是根據雞兔的總數就可以算出在假設下共有幾隻腳,把這樣得到的腳數與題中給出的腳數相比較,看看差多少,每差2只腳就說明有1只兔,將所差的腳數除以2,就可以算出共有多少隻兔。概括起來,解雞兔同籠題的基本關係式是:兔數=(實際腳數-每隻雞腳數×雞兔總數)÷(每隻兔子腳數-每隻雞腳數)。

類似地,也可以假設全是兔子。

3樓:匿名使用者

腿的條數除以2再減去頭的個數得兔的數量

頭的數量減去兔的數量得雞的數量

4樓:

雞有x只,兔有(頭總數-x)只。

2x+4(頭總數-x)=腳總數

雞兔同籠的問題 c語言怎麼樣編寫

5樓:木澂

1、編寫思路如下:

假設有x只雞,y只兔,兩者一共有m只頭,n只腳,則有:

x + y = m ; 2 * x + 4 * y = n ;

即得到關係式,x + 2y =n/2 , x + y = m , y = n/2 - m , x = 2 * m - n/2。

2、**及註釋如下:

#include

main ( )

int a, b ;

printf("請分別輸入動物頭與腳的數目:\n");

scanf("%d%d",&a,&b); //頭數為a, 腳數目為b;

printf("一共有%d只雞,%d只兔子\n",b/2-a,2 * a - b/2);

6樓:哇哎西西

雞兔同籠是中國古代的數學名題之一。

大約在2023年前,《孫子算經》中就記載了這個有趣的問題。書中是這樣敘述的:

今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?

這四句話的意思是:

有若干只雞兔同在一個籠子裡,從上面數,有35個頭,從下面數,有94只腳。問籠中各有多少隻雞和兔?

已知雞和兔的總數量為n,總腿數為m。輸入n和m,依次輸出雞和兔的數目,如果無解,則輸出“no answer”

程式如下:

#include int main()

return 0;

7樓:阿豪呦

輸入說明: 輸入為兩個正整數,第一個為 m 的值,第二個為 n 的值,用空格分隔。

輸出說明: 若有解,輸出兩個整數,用空格分隔,第一個代表雞的只數,第一個代表兔子的只數;若無解,直接輸出一個 0。

演算法:以列舉法寫程式,讓計算機從雞為0開始執行計算,利用迴圈語句計算大量次數後,得出最終結果。

具體程式為:

#include

int main()

}//for執行完表示找不到

printf("0");return 0;}

擴充套件資料:

雞兔同籠問題演算法有很多種,編寫出的程式不盡相同。下面列舉幾種演算法,編寫程式會更為簡單一些。

有若干只雞兔同在一個籠子裡,從上面數,有35個頭,從下面數,有94只腳。問籠中各有多少隻雞和兔?

(1)假設全是雞: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(只)(2)設雞有x只,兔有y只。解得

8樓:

#include "stdio.h"

void main()

}printf("請輸入雞與兔子的腳的總數\n");

d=a-c;

if(c>=0&&d>=0)

else printf("同學,我看你給的數有錯吧!");

}else printf("同學,我看你給的數有錯吧!");}

9樓:星月小木木

#include

int main()

10樓:匿名使用者

我幫你編一個試試

假設有head個頭和foot只腳 程式如下:

#include

void main()}

11樓:飛躍成都躍宇佳

#include

int main ()

else

x=(4*a-b)/2;

y=a-x;

if(2*x+4*y==b)

printf("雞%d\n兔%d\n",x,y); //x表示雞數,y表示兔數//

return 0;}

雞兔同籠問題,雞兔同籠問題

用差倍問題來解也好啊 數量相同的雞兔,兔4條腿,雞2條腿,兔腿是雞腿2倍,又知兔腿比雞腿多32只,假設雞腿為1份數,兔腿則是2份數 2份數 1份數 32 1份數 32 雞腿32只 雞32 2 16 只 兔腿32 2 64 兔64 4 16 只 答 籠子裡的雞兔各16只.例1 古典題 雞兔同籠,頭共4...

雞兔同籠問題,雞兔同籠問題怎麼解

訓練孩子邏輯思維,啟發孩子進行自主探索 雞兔同籠問題,一直以來都是孩子們頭痛的問題,特別是低年級的學生,根本不會用方程問題去解答,這時候,邏輯思維就是一種很好的解決辦法。面對 一個籠子雞和兔共有35個頭,94只腳,問雞和兔共有多少隻?的雞兔同籠問題,有的家長是這樣啟發孩子進行思考的 這樣一說,孩子是...

雞兔同籠問題,雞兔同籠問題怎麼解

1 解 設甲打了x小時。1 6 x 1 10 7 x 1 1 6x 7 10 1 10x 1 2 30x 3 10 x 4.5 答 甲打了4.5小時。2 解 設甲命中x發,則乙命中 14 x 發。4x 2 10 x 5 14 x 3 x 4 10 4x 20 2x 70 5x 3x 12 104x ...