- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Average of a stream of numbers in C++
Average of numbers is the sum of numbers divided by the total number of numbers.
In this problem, we are given a stream of numbers. And we will print average of the number at every point.
Let’s take an example of how it works −
We have a stream of 5 number 24 , 76 , 29, 63 , 88
The average at each point of the stream would be −
24 , 50 , 43 , 48 , 56.
For this we will find the average of the stream every time a number is added to the stream. So, we need to find the average of 1 number , 2 numbers , 3 numbers and so on. We will make use of previous average for this.
Algorithm
Step 1 : for i -> 0 to n (length of stream). Step 2 : find the average of elements using formula : Average = (average * i) + i / (i+1) Step 3 : print average.
Example
#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; }
Output
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
The same algorithm is applicable for all data types. And can be used to calculate the average of stream at every point.
Advertisements