js中怎么解决“百钱白鸡”问题

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

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

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

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

 可以得出如下的方程:

     x+y+z=100,

     5x+3y+z/3=100,其实也就是=>(15x+9y+z=300)

    下面再看看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)  && (15 * x + 9 * y + z == 300)){
                document.write("公鸡" + x, "母鸡" + y, "小鸡" + z + "&nbsp;&nbsp;&nbsp");
            }
        }
    }
}

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

结果有四种:公鸡0母鸡25小鸡75; 公鸡4母鸡18小鸡78; 公鸡8母鸡11小鸡81; 公鸡12母鸡4小鸡84 。

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

推荐阅读更多精彩内容

  • 我国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值...
    编程小世界阅读 2,635评论 0 0
  • DAY 01 JAVA简述 Java是由SUN公司在1995年推出的一门高级编程语言,是现今服务器端的首选编程语言...
    周书达阅读 1,018评论 0 0
  • 题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有...
    不够果断是种癌阅读 1,504评论 0 2
  • 条件:公鸡5元一只,母鸡3元一只,小鸡1元3只,100元要买100只鸡?有多少买法?设:公鸡买x只,母鸡y只,小鸡...
    Why自给自足阅读 762评论 0 5
  • 枚举法:列出问题所有的解,然后根据判断条件逐个验证对错。若满足判断条件,则问题解决。否则,问题无解。 设计模式:1...
    GBangBang阅读 3,822评论 0 1