समस्या विवरण
संख्याओं की एक स्ट्रीम दी गई है, प्रत्येक नई संख्या जुड़ने के बाद औसत प्रिंट करें।
उदाहरण: स्ट्रीम = 24, 76, 29, 63, 88
- 1 संख्या: 24
- 2 संख्याएं: (24+76)/2 = 50
- 3 संख्याएं: (24+76+29)/3 = 43
- 4 संख्याएं: (24+76+29+63)/4 = 48
- 5 संख्याएं: (24+76+29+63+88)/5 = 56
एल्गोरिदम
पिछले औसत का उपयोग करें: नया_औसत = (पुराना_औसत * i + नई_संख्या) / (i+1)
उदाहरण कोड
#include <iostream>
using namespace std;
int main() {
int arr[] = {24, 76, 29, 63, 88};
int average = 0;
int n = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < n; i++) {
average = ((average * i) + arr[i]) / (i + 1);
cout << "The average of " << i+1 << " numbers of the stream is " << average << endl;
}
return 0;
}
आउटपुट
The average of 1 numbers of the stream is 24 The average of 2 numbers of the stream is 50 The average of 3 numbers of the stream is 43 The average of 4 numbers of the stream is 48 The average of 5 numbers of the stream is 56