Average of given numbers in Bash
Last Updated :
04 May, 2023
Program to compute average in bash.
Examples:
Input : 1 2 3 4 5
Output : average : 3.0
Input : 1 2 3 4 10
Output : average : 5.0
The program to compute the average is simple. It is also called Mean.
Formula:
(sum of all elements) / (total no. of elements)
The extension for bash programs end with .sh. Elements are stored in array which is traversed in a while loop to calculate the sum. It is recommended to understand Arrays in Shell. The avg is calculated using bc command. bc command is used for the command line calculator.
Programs in bash is executed as follows:
sh program_name.sh
OR
./program_name.sh
Example:
# Total numbers
n=5
# copying the value of n
m=$n
# initialized sum by 0
sum=0
# array initialized with
# some numbers
array=(1 2 3 4 5)
# loop until n is greater
# than 0
while [ $n -gt 0 ]
do
# copy element in a
# temp variable
num=${array[`expr $n - 1`]}
# add them to sum
sum=`expr $sum + $num`
# decrement count of n
n=`expr $n - 1`
done
# displaying the average
# by piping with bc command
# bc is bash calculator
# command
avg=`echo "$sum / $m" | bc -l`
printf '%0.3f' "$avg"
Output:
3.0
Time complexity: O(n) where n is given total numbers
Auxiliary space: O(1)
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...