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}只&nbsp&nbsp&nbsp母鸡:${y}只&nbsp&nbsp&nbsp小鸡${z}只<br><br>`)
            }
        }
    }
}

得到的结果如下


微信截图_20190728202513.png

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容