How to increment an integer represented as an integer array of digits by one in Node.js

1 Answer

0 votes
function incrementByOne(digits) {
    let carry = 1;
    for (let i = digits.length - 1; i >= 0; i--) {
        digits[i] += carry;
        if (digits[i] === 10) {
            digits[i] = 0;
            carry = 1;
        } else {
            carry = 0;
            break;
        }
    }
    
    if (carry === 1) {
        digits.unshift(1);
    }
    
    return digits;
}

if (require.main === module) {
    const digits = [9, 9, 9];
    const result = incrementByOne(digits);
    console.log("Result:", result.join(" "));
}



/*
run:

Result: 1 0 0 0

*/

 



answered Jul 2 by avibootz
...