Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

ตรวจสอบเลข Oddish/Evenish - JavaScript

Oddish Number: ผลรวมหลักเป็นเลขคี่ | Evenish Number: ผลรวมหลักเป็นเลขคู่

ตัวอย่างโค้ด (Recursive)

const isOddish = (num, sum = 0) => {
  if (num) return isOddish(Math.floor(num / 10), sum + (num % 10));
  return sum % 2 === 1;
};

console.log(isOddish(434667));

ผลลัพธ์

false

คำนวณ

4+3+4+6+6+7 = 30 (Even) → Evenish → false

วิธีแบบ Iterative (ไม่ใช้ Recursion)

const isOddish = num => {
  const sum = String(Math.abs(num)).split('').reduce((a, b) => a + +b, 0);
  return sum % 2 === 1;
};

ใช้ Math.abs รองรับเลขลบ, reduce รวมผลรวมหลัก