今天我们来回顾一下JS的经典案例之百钱百鸡
题目
公鸡5元钱一只,母鸡3元钱一只,小鸡3只一元钱,用100元钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100元钱。
分析
- 第一、公鸡的单价为5元/只,母鸡的单价为3元/只,小鸡的单价为1/3元/只;
- 第二,必须花满100元,不能多不能少;
- 第三、公鸡、母鸡、小鸡都要有,即三种鸡各自的数量都必须大于零。
解答
我们先设变量,公鸡的数量为x只,母鸡的数量为y只,小鸡的数量为z只,从分析题目中得出的函数为:
x + y + z == 100 // 这里的函数为三种鸡的数量总数为100只;
5 * x + 3 * y + 1/3 * z == 100 // 这里的函数为三种鸡的总价钱之和为100元;
下面,我们就用JS来解一下这道题:
for(var x = 0 ; x <= 100 ; x++){
for(var y = 0 ; y <= 100 ; y++){
for(var z = 0 ; z <= 100 ; z++){
if((x + y + z == 100) && (5*x + 3 * y + 1/3 * z == 100) && (x > 0) && (y > 0) && (z > 0)){
document.write(`公鸡:${x}只     母鸡:${y}只      小鸡:${z}只 <br><br>`)
}
}
}
}
可以得出: