Vấn đề
Chúng ta cần viết một hàm JavaScript nhận vào hai số. Hàm sẽ đếm số lần nhớ (carry) cần thực hiện khi cộng hai số đó như thể đang cộng trên giấy. Ví dụ khi cộng 179 và 284, ta nhớ 2 lần, nên hàm trả về 2.
Ví dụ
Dưới đây là mã nguồn:
const num1 = 179;
const num2 = 284;
const countCarries = (num1 = 1, num2 = 1) => {
let res = 0;
let carry = 0;
while(num1 + num2){
carry = +(num1 % 10 + num2 % 10 + carry > 9);
res += carry;
num1 = num1 / 10 | 0;
num2 = num2 / 10 | 0;
};
return res;
};
console.log(countCarries(num1, num2));Kết quả
Kết quả đầu ra trong console:
2