怎麼編譯雞兔同籠問題
㈠ 雞兔同籠的問題 c語言怎麼樣編寫
輸入說明:
輸入為兩個正整數,第一個為
M
的值,第二個為
N
的值,用空格分隔。
輸出說明:
若有解,輸出兩個整數,用空格分隔,第一個代表雞的只數,第一個代表兔子的只數;若無解,直接輸出一個
0。
演算法:以列舉法寫程序,讓計算機從雞為0開始執行計算,利用循環語句計算大量次數後,得出最終結果。
具體程序為:
#include
int
main()
{int
chicken,rabbit;//雞,兔子
int
M,N;//頭,腳
printf("M=,N=");
scanf("%d
%d",&M,&N);
for(chicken=0;chicken<=M;chicken++)//雞的數量從0到總頭數M嘗試
{if(chicken*2+rabbit*4==N)//如果總腳數與輸入的總腳數相同
{printf("%d
%d",chicken,rabbit);//分別輸出雞、兔
return
0;//停止程序}}//for執行完表示找不到
printf("0");return
0;}
(1)怎麼編譯雞兔同籠問題擴展閱讀:
雞兔同籠問題演算法有很多種,編寫出的程序不盡相同。下面列舉幾種演算法,編寫程序會更為簡單一些。
有若干只雞兔同在一個籠子里,從上面數,有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只。
解得
參考資料:雞兔同籠(一種數學奧數題目)_網路
㈡ 用C語言編寫雞兔同籠問題
#include
int
main()
{
int
chicken,rabbit;//雞,兔子
int
m,n;//頭,腳
printf("m=,n=");
scanf("%d
%d",&m,&n);
for(chicken=0;chicken<=m;chicken++)//雞的數量從0到總頭數m嘗試
{
if(chicken*2+rabbit*4==n)//如果總腳數與輸入的總腳數相同
{
printf("%d
%d",chicken,rabbit);//分別輸出雞、兔
return
0;//停止程序
}
}
//for執行完表示找不到
printf("0");
return
0;
}
㈢ C語言編寫雞兔同籠的問題
#include"stdio.h"
int main()
{
int M,N,x,y; /*x表示雞數,y表示兔數*/
printf("請輸入總頭數和總腳數:");
scanf("%d%d",&M,&N);
x=(4*M-N)/2;
y=(N-2*M)/2;
if(x+y==M&&2*x+4*y==N) printf("%d %d",x,y);
else printf("0");
}
希望採納