On Jan 29, 3:28*pm, stalin <stalin1...@gmail.comwrote:
*hi
* * * * * * *i have one problem suppose if we given a number163 as
input the out put of the number is
* * * * * * * * * * * * * *one --100
* * * * * * * * * * * * * one--- 50
* * * * * * * * * * * * * *one---10
* * * * * * * * * * * * * * * one-- 2
* * * * * * * * * * * * * * * * * one--1
Try something like:
var computeUnits = (function(){
var units = [1, 2, 5, 10, 20, 50, 100];
return {
doBreakdown: function(amt) {
var breakDown = {},
i = units.length,
unit;
while (i--) {
unit = units[i];
breakDown[unit] = (amt/unit)|0;
amt = amt % unit;
}
return breakDown;
},
// Shows how many of each unit
showBreakdown: function(amt) {
var o = this.doBreakdown(amt);
var t = [];
for (var p in o){
t.push(p+': '+o[p]);
}
alert(t.join('\n'));
},
// Shows how many of each unit 0
showBreakdownMin: function(amt) {
var o = this.doBreakdown(amt);
var t = [];
for (var p in o){
if (o[p] 0) {
t.push(p+': '+o[p]);
}
}
alert(t.join('\n'));
}
};
})();
computeUnits.showBreakdown(163);
computeUnits.showBreakdownMin(163);
--
Rob