เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลขและส่งคืนตัวเลขที่สามารถแสดงเป็นกำลัง 2 ซึ่งใกล้เคียงกับตัวเลขอินพุตมากที่สุด
ตัวอย่างเช่น −
หากหมายเลขอินพุตเป็น 365 เอาต์พุตควรเป็น 256 เนื่องจาก 256 เป็นตัวเลขที่ใกล้เคียงที่สุดกับ 365 ซึ่งสามารถแสดงเป็น 2^n สำหรับค่าจำนวนเต็มบางค่าของ n
ตัวอย่าง
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
const num = 365;
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)); ผลลัพธ์
ผลลัพธ์ในคอนโซล:−
256