題目:“百錢買百雞”是我國古代的著名數學題。題目這樣描述: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++)
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);//打印輸出
代碼圖:

控制台結果: