Computer >> Máy Tính >  >> Lập trình >> Javascript

Chúng ta có thể tính tổng các chữ số trong JavaScript bao nhiêu lần

Chúng tôi bắt buộc phải viết một hàm JavaScript nhận vào một số nguyên dương và trả về độ bền cộng tính của nó.

Độ bền cộng của một số nguyên, chẳng hạn n, là số lần chúng ta phải thay thế số sau đó bằng tổng các chữ số của nó cho đến khi số đó trở thành một số nguyên có một chữ số.

Ví dụ:Nếu số là -

1679583

Sau đó,

1 + 6 + 7 + 9 + 5 + 8 + 3 = 39 // 1 Pass
3 + 9 = 12 // 2 Pass
1 + 2 = 3 // 3 Pass

Do đó, đầu ra phải là 3.

Ví dụ

Mã cho điều này sẽ là -

const num = 1679583;
const sumDigit = (num, sum = 0) => {
   if(num){
      return sumDigit(Math.floor(num / 10), sum + num % 10);
   };
   return sum;
};
const persistence = num => {
   num = Math.abs(num);
   let res = 0;
   while(num > 9){
      num = sumDigit(num);
      res++;
   };
   return res;
};
console.log(persistence(num));

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

3