সমস্যা
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি অ্যারে নেবে। ফাংশনটি একটি নতুন অ্যারে তৈরি করবে যেটি ইনপুট অ্যারের এলিমেন্টগুলোর মুভিং অ্যাভারেজ স্টোর করবে। উদাহরণস্বরূপ:
[1, 2, 3, 4, 5] → [1, 1.5, 3, 5, 7.5]
প্রথম এলিমেন্ট হলো প্রথম এলিমেন্টের গড়, দ্বিতীয় এলিমেন্ট হলো প্রথম ২টি এলিমেন্টের গড়, তৃতীয় হলো প্রথম ৩টি এলিমেন্টের গড়, এভাবেই চলবে।
উদাহরণ
নিচে কোড দেওয়া হলো:
const arr = [1, 2, 3, 4, 5];
const movingAverage = (arr = []) => {
const res = [];
let sum = 0;
let count = 0;
for(let i = 0; i < arr.length; i++){
const el = arr[i];
sum += el;
count++;
const curr = sum / count;
res[i] = curr;
};
return res;
};
console.log(movingAverage(arr));
আউটপুট
কনসোল আউটপুট:
[ 1, 1.5, 2, 2.5, 3 ]