Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Kiểm tra số đặc biệt trong JavaScript

Vấn đề

Chúng ta cần viết một hàm JavaScript nhận vào một số num làm đối số duy nhất. Hàm phải trả về true nếu tổng các chữ số của số num là một số đối xứng (palindrome), ngược lại trả về false.

Ví dụ, nếu đầu vào là:

const num = 781296;

Thì đầu ra sẽ là:

const output = true;

Giải thích kết quả

Vì tổng chữ số của 781296 là 33, đây là một số đối xứng.

Ví dụ

Dưới đây là mã thực hiện:

const num = 781296;
const findSum = (num, sum = 0) => {
  if (num) {
    return findSum(Math.floor(num / 10), sum + (num % 10));
  }
  return sum;
};
const palindromeDigitSum = (num = 1) => {
  const sum = findSum(num);
  const str = String(sum);
  const arr = str.split('');
  const reversed = arr.reverse();
  const revNum = +arr.join('');
  return revNum === sum;
};
console.log(palindromeDigitSum(num));

Kết quả

Đầu ra trên console:

true