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
結果:
所有的方法(截屏)
初學者方法不夠好,請大神們指點一二!