Average of given numbers in Bash

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

Program to compute average is simple. It is also called as **Mean**.

Formula:

(sum of all elements) / (total no. of elements)

The extension for bash programs end with **.sh**. Elements are stored in array which are traversed in while loop to calculate the sum. It is recommended to understand Arrays in Shell.

The avg is caculated using bc command. bc command is used for command line calculator.

Programs in bash is executed as follows :

sh program_name.sh OR ./program_name.sh

`# 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