เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของจำนวนเต็ม arr เป็นอาร์กิวเมนต์แรกและตัวเลข num (num
ตัวอย่างเช่น −
หากอาร์เรย์อินพุตและตัวเลขเป็น −
จากนั้นผลลัพธ์ควรเป็น −
เนื่องจากหน้าต่างขนาด 2 แบบต่อเนื่องที่เป็นไปได้คือ (1, 2), (2, 3), (3, 4) และ (4, 5)
รหัสสำหรับสิ่งนี้จะเป็น −
และผลลัพธ์ในคอนโซลจะเป็น −const arr = [1, 2, 3, 4, 5];
const num = 2;
const output = [1.5, 2.5, 3.5, 4.5];
ตัวอย่าง
const arr = [1, 2, 3, 4, 5];
const num = 2;
const findContiniousAverage = (arr = [], num = 1) => {
if(num > arr.length){
return [];
};
const res = [];
let sum = 0;
let left = 0, right = 0;
for(; right < num; right++){
sum += arr[right];
};
res.push(sum / num);
for(; right < arr.length; right++, left++){
sum -= arr[left];
sum += arr[right];
res.push(sum / num);
};
return res;
};
console.log(findContiniousAverage(arr, num));
console.log(findContiniousAverage(arr));
ผลลัพธ์
[ 1.5, 2.5, 3.5, 4.5 ]
[ 1, 2, 3, 4, 5 ]