一道用for循环解决的数学题,跪求大神解答?

现在我手里有150元钱用来买鸡,小鸡一只1元,公鸡一只3元,母鸡一只5元,一共要买50只鸡 ,一共有几种买法
谢谢各位大神 妹子刚刚接触js 还望大神指导。。。

阅读 3.6k
3 个回答

window.onload = function () {

        document.write("<p>a b c</p>")
        for (var a = 1; a <= 142; a++) {
            for (var b = 1; b <= 144; b++) {
                for (var c = 1; c <= 146; c++) {
                    if (a*1 + b*3 + c*5 == 150) {
                        document.write("<p>"+a+" "+b+" "+c+"</p>");
                    }else if(a*1 + b*3 + c*5 > 150){
                        break;
                    }
                }
            }
        }
    }

其实就是
a+b+c=50;
a+3b+5c=150;
求a b c的正整数排列组合个数

js代码看下面

function say_hello(){
    
    var str='没有可用方案',strdetail='';
    var numb =0,money = 150,chick=50,va=1,vb=3,vc=5;
    for(var a=0;a<=chick;a++){
        for(var b=0;b<=chick-a;b++){
        var c = chick-a-b;
            if((a*va+b*vb+c*vc)==money){
                numb++;
                strdetail  =  strdetail + 
                    '<p>小'+a+'只,公'+b+'只,母'+c+'只</p>';
            }
    }
    }
    if(numb>0){
        str = '<p>有'+numb+'种方案</p>'+strdetail;
    }
    $('#show').html(str);
}

效果如下图:
图片描述

具体可以看runjs上的全部代码:
数学计算demo

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题