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

ตรวจสอบหมายเลข Gapful ใน JavaScript

หมายเลขเป็น Gapful number เมื่อ:

  • มีอย่างน้อย 3 หลัก
  • หารด้วยตัวเลขที่รวมจากหลักแรกและหลักสุดท้ายลงตัว

ตัวอย่าง:

1053 เป็น Gapful เพราะมี 4 หลักและหารด้วย 13 ลงตัว 135 เป็น Gapful เพราะมี 3 หลักและหารด้วย 15 ลงตัว

หน้าที่ของเราคือเขียนโปรแกรมคืนค่า Gapful number ที่ใกล้ที่สุดกับตัวเลขที่ให้มา

โค้ด:

const n = 134; const isGapful = (numStr) => { const int = parseInt(numStr); return int % parseInt(numStr[0] + numStr[numStr.length - 1]) === 0; }; const nearestGapful = (num) => { if(typeof num !== 'number'){ return -1; } if(num <= 100){ return 100; } let prev = num - 1, next = num + 1; while(!isGapful(String(prev)) && !isGapful(String(next))){ prev--; next++; }; return isGapful(String(prev)) ? prev : next; }; console.log(nearestGapful(n));

ผลลัพธ์ในคอนโซล:

135