JS解決輸入1-1000元,輸出由1、5、10、20、50、100拼成輸入的面值方法總數

javascript語言解決筆試題:

輸入:1-1000元數額;
輸出:由1、5、10、20、50、100拼成輸入的面值方法總數。

此代碼在題目基礎上增加了顯示所有可能的方法。


        <script>
            /* 輸入1-1000元,輸出由1、5、10、20、50、100拼成輸入的面值方法總數————美團筆試題*/
            total = prompt('請輸入1-1000的金額,從而計算面值爲1、5、10、20、50、100拼接的方法方法數');
            count = 0;
            t100 = total;

            function money(){
                for(var i100 = Math.floor(t100/100);i100>=0;i100--){
                    var t50 = t100 - i100*100;
                    for(var i50 = Math.floor(t50/50);i50>=0;i50--){
                        var t20 = t50 - i50*50;
                        for(var i20 = Math.floor(t20/20);i20>=0;i20--){
                            var t10 = t20-i20*20;
                            for(var i10 = Math.floor(t10/10);i10>=0;i10--){
                                var t5 = t10 - i10*10;
                                for(var i5 = Math.floor(t5/5);i5>=0;i5--){
                                    var t1 =t5-i5*5;
                                    count++;
                                    console.log(i100+'個100元'+i50+'個50元'+i20+'個20元'+i10+'個10元'+i5+'個5元'+t1+'個1元');
                                }
                            }
                        }
                    }
                }
                alert('數額爲'+total+'的拼接方法有'+count+'種');
            }
        </script>

    <body onload='money()'></body>

運行結果:
輸入:512
結果:
alert結果

所有的方法(截屏)
部分結果

初學者方法不夠好,請大神們指點一二!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章