用循環解決“百錢買百雞”問題


題目:“百錢買百雞”是我國古代的著名數學題。題目這樣描述:3 文
錢可以買1只公雞,2 文錢可以買一只母雞,1 文錢可以買3 只小雞。用100 文
錢買100 只雞,那么各有公雞、母雞、小雞多少只?
 
首先需要找出公雞,母雞,小雞以及金錢的關系;
我們先分別給三種雞定義變量;
int a;                    // 公雞的數量
int b;                   //母雞的數量
int c;                   //小雞的數量
 
我們再來尋找他們之間的關系
已知三種雞共一百只,則:a+b+c=100;
一共花了一百文錢,則:3a+2B+c/3=100;
又因為小雞是一文錢三只,不能單獨售賣因此,c/3 = 0;
在知道條件后,知道答案可能不唯一,我們可以借助計算機的計算能力用列舉法來得出答案;
每種雞的數量都肯定是0 <= 某種雞數量 <=100的;
因此在明確次數的情況下我們用for循環最為方便;
所以代碼為:
for(a = 0; a <= 100; a++)
   for(b = 0; b<=100; b++)
      for(c = 0; c<=100; c++)
 
此時我們需要在其中選擇出滿足題目要求條件的答案;
所以里面需要用到if選擇結構來篩選出正確答案:
if(a+b+c == 100 && (3*a+2*b+c/3) == 100 && c%3 == 0)
 
最后循環操作為打印輸出答案:
 
System.out.println("公雞有:"+a+"母雞有:"+b+"小雞有:"+c);//打印輸出
 
代碼圖:
 

控制台結果:

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM