以“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?”為例
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了大興安嶺免費建站歡迎大家使用!
public?class?test?{
public?static?void?main(String[]?args)?{
int?x,y;??//x:雞??y:兔
for(x=0;x=35;x++)?{???//遍歷雞的只數(shù)
y=35-x;????????//兔的只數(shù)等于35?-?雞
if(2*x+4*y==94)???//如果雞和兔的腳總數(shù)是94????????????
System.out.println("雞"+x+"只,兔"+y+"只");
}
}
}
以“今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?”為例
public?class?test?{
public?static?void?main(String[]?args)?{
int?x,y;??//x:雞??y:兔
for(x=0;x=35;x++)?{???//遍歷雞的只數(shù)
y=35-x;????????//兔的只數(shù)等于35?-?雞
if(2*x+4*y==94)???//如果雞和兔的腳總數(shù)是94????????????
System.out.println("雞"+x+"只,兔"+y+"只");
}
}
}
兔 = (100 - 36 - 36) / 2 = 14
雞 = 36 - 14 = 22
算法就是傳說中的:
36頭, 先各抬一條腿 ( 100-36 )
然后再 各抬一條腿 ( 100-36-36 )
此狀態(tài)下, 雞全躺下了, 兔子還 2條腿站著
那么 兔子的數(shù)量 = (100 - 36 - 36) / 2 = 14
雞的數(shù)量 = 36 - 兔子的數(shù)量 = 22
一只雞是一個頭兩只腳
一只兔是一個頭四只腳
我的算法就是用for循環(huán)最多進行35(頭的數(shù)量)次循環(huán),每循環(huán)一次減去一個頭只四腳,相當于抓一只免子出來,當籠子里頭的數(shù)量乘以2剛好等于腳的數(shù)量的時候,就說明籠子里全是雞了,這樣就可以知道各自的數(shù)量了,以下是核心代碼:
int?head?=?35,?foot?=?94;
int?countChicken,?int?countRabbit;
for(int?i?=?0;?i??35;?i++){
if(head?*?2?==?foot){
countChicken?=?head;
break;
}
head?-=?1;
foot?-=?4;
countRabbit++;
}
System.out.println("雞的數(shù)量:"?+?countChicken);
System.out.println("兔子的數(shù)量:"?+?countRabbit);
#includestdio.h
void main()
{
int ji,tu;//ji=50,tu=25
int sum;
for (tu=1;tu=25;tu++)
{
for(ji=0;ji=50;ji++)
{
sum=4*tu+2*ji;
if (sum==100(ji+tu)==36) printf("雞有%d只,兔有%d只\n",ji,tu);
}
}
}