js中怎么用for语句解决百钱百鸡问题

首先我们来介绍一下这个百钱百鸡到是怎么一个问题

首先介绍一下题:公鸡5元钱一只,母鸡3元钱一只,小鸡3只一元钱,

用100元钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100元钱。

首先我们用我们学过的方程式来写一下:

我们设x公鸡为只,母鸡为y只,小鸡为z只
     x+y+z=100,
意思是:公鸡+母鸡+小鸡=100只
     5x+3y+z/3=100
这个是它们加起来的钱数
    下面再看看x,y,z的取值范围。

    由于只有100元钱,如果都买公鸡,公鸡最多只能买20只,所以
(x<=20),如果都买母鸡,母鸡最多能买33只所以(y<=33),如果都买小鸡,小鸡最多能买100只,所以(z<=100)。

下面是代码

for ( var x = 0; x <= 20; x++){
    for ( var y = 0; y <=33; y++){
        for ( var z = 0; z <= 100; z++){
            if( (x + y + z == 100)  && (5 * x + 3 * y + 1/3*z== 100)){
                document.write(`公鸡:${x}只   母鸡:${y}只   小鸡${z}只

`) } } } }

得到的结果如下


微信截图_20190728202513.png

下面我们来解释一下
首先我们用了3个for循环语句,每一个语句写买每种鸡的情况,然后用if语句来给它做判断去筛选符合我们条件的数据,我用了逻辑与来作比较,因为逻辑与是当“表达式1和表达式2 都为true的时候, 结果为true”,而我们也是需要两个条件同是成立的结果, 是空格,然后每个结果给一个换行。
然后document.write或者console.log都可以,结果就出来了

你可能感兴趣的:(js中怎么用for语句解决百钱百鸡问题)