เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลขและส่งคืนตัวเลขที่สามารถแสดงเป็นกำลัง 2 ซึ่งใกล้เคียงกับตัวเลขอินพุตมากที่สุด
ตัวอย่างเช่น ถ้าใส่ตัวเลขถ้า 145
ผลลัพธ์ควรเป็น 128 เนื่องจาก 145 เป็นจำนวนที่ใกล้เคียงที่สุดกับ 128 ซึ่งสามารถแทนค่าเป็น 2^n สำหรับค่าจำนวนเต็มบางค่าของ n
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const num = 145; const nearestPowerOfTwo = num => { // dealing only with non negative numbers if(num < 0){ num *= -1; } let base = 1; while(base < num){ if(num - base < Math.floor(base / 2)){ return base; }; base *= 2; }; return base; }; console.log(nearestPowerOfTwo(num));
ผลลัพธ์
เอาต์พุตในคอนโซล −
128