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

2021-08-20 11:15:03 字數 2806 閱讀 3300

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;}

雞兔同籠問題求解,雞兔同籠問題

分析與解 因為100文錢,買100只雞,所以平均1文錢買1只雞。每小組4只雞 其中1只母雞和3只小雞,共值4文錢。因為1只母雞3文錢,3只小雞1文錢 恰好是平均1文錢買1只雞。每大組7只雞 其中1只公雞和6只小雞。共值7文錢。因為1只公雞5文錢,3只小雞1文錢,6只小雞2文錢 恰好是平均1文錢買1只...

c語言雞兔同籠問題,C語言 雞兔同籠問題

include using namespace std int main int a,b,c,d a 35,b 94 c 2 a b 2 d b 2 a cout c 拓展資料c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯 處理低階儲存器 產生少量的機器碼以及...

雞兔同籠有幾種方法,雞兔同籠各種解法

公 行測數量關係題,雞兔同籠問題的解法,或參考 假設法運用說明 假設全是雞或全是兔,腳的總數必然會多或少,通過腳數與實際數之差,可以知道造成差的原因,於是知道應有多少隻兔或應有多少隻雞。1 如果求兔的數量,把所有的動物假設為雞。假設把所有的動物都看成是雞,而實際上每一隻兔子是比雞多了2條腿。設雞求兔...