समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक सरणी लेता है। हमारे फ़ंक्शन को एक नई सरणी का निर्माण करना चाहिए जो इनपुट सरणी के तत्वों की चलती औसत को संग्रहीत करता है। उदाहरण के लिए -
[1, 2, 3, 4, 5] → [1, 1.5, 3, 5, 7.5]
पहला तत्व पहले तत्व का औसत है, दूसरा तत्व पहले 2 तत्वों का औसत है, तीसरा तत्व पहले 3 तत्वों का औसत है और इसी तरह।
उदाहरण
निम्नलिखित कोड है -
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 ]