เราจำเป็นต้องเขียนฟังก์ชัน 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