Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @param {number} dividend
- * @param {number} divisor
- * @return {number}
- */
- const divide = function(dividend, divisor) {
- const sign = (dividend > 0 && divisor > 0) || (dividend < 0 && divisor < 0);
- dividend = dividend < 0 ? -dividend : dividend;
- divisor = divisor < 0 ? -divisor : divisor;
- let count = 0;
- let number = dividend;
- let step = 1;
- let stepValue = divisor;
- while (number >= 0) {
- number -= stepValue;
- count+=step;
- step +=1;
- stepValue+=divisor;
- if(stepValue > number) {
- step = 1;
- stepValue = divisor;
- }
- }
- count = count - 1;
- const result = sign ? count : -count;
- if (result >= 2147483648) {
- return result - 1;
- } else if (result < -2147483648) {
- return -2147483648;
- } else {
- return result;
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement