UNPKG

arithmetic-operation-with-prefix-zero

Version:

Adding without losing prefix zero

79 lines (56 loc) 2.18 kB
numberLength=(input)=>{ input=(input<=0.1)?input*-1:input; if(input==10)return 2; var length = 0; for( iloopCounter = 10 ; 1 ;iloopCounter*=10){ length ++; if(Math.floor(input/iloopCounter)==0 || input/iloopCounter <0)break; } return length; } exports.addWithZero = function(input,addvalue) { if(addvalue<=0){ console.log("AddValue should be greater than zero") return 0; } var addedNumber = Number(input)+Number(addvalue); var prefixZero=""; for(let iloopCounter = numberLength(addedNumber) ; iloopCounter < input.length; iloopCounter++){ prefixZero = "0" + prefixZero ; } return prefixZero+addedNumber.toString() ; } exports.subWithZero = function(input,addvalue) { if(addvalue<=0){ console.log("SubValue should be greater than zero") return 0; } var minus =""; if(addvalue>Number(input)){ minus="-"} var addedNumber = Number(input)-Number(addvalue); var prefixZero=""; for(let iloopCounter = numberLength(addedNumber) ; iloopCounter < input.length; iloopCounter++){ prefixZero = "0" + prefixZero ; } return minus+prefixZero+((addedNumber<=-0.1)?addedNumber*-1:addedNumber).toString() ; } exports.multiplyWithZero = function(input,addvalue) { var minus =""; if(addvalue<=(-0.1)){ minus="-"} if(addvalue==0) return 0; var addedNumber = Number(input)*Number(addvalue); var prefixZero=""; for(let iloopCounter = numberLength((addedNumber<=-0.1)?addedNumber*-1:addedNumber) ; iloopCounter < input.length; iloopCounter++){ prefixZero = "0" + prefixZero ; } return minus+prefixZero+((addedNumber<=-0.1)?addedNumber*-1 :addedNumber).toString() ; } exports.divWithZero = function(input,addvalue) { var minus =""; if(addvalue<=(-0.1)){ minus="-"} if(addvalue==0) { console.log("divValue should not be zero") ;return 0; } var addedNumber = Number(input)/Number(addvalue); var prefixZero=""; for(let iloopCounter = numberLength(addedNumber) ; iloopCounter < input.length-1; iloopCounter++){ prefixZero = "0" + prefixZero ; } return minus+prefixZero+((addedNumber<=-0.1)?addedNumber*-1 :addedNumber).toString() ; }