In this HackerRank Compute the Average problem solution we have given N integers, and compute their average and rounded to three decimal places.

Input format

The first line contains an integer N.

Each of the following N lines contains a single integer.

Output format

Display the average of the N integers, rounded off to three decimal places.

Input Constraints

1 <= N <= 500

-10000 <= x <= 10000 (x refers to elements of the list of integers for which the average is to be computed)

HackerRank Compute the Average problem solution


Problem solution.

read num
sum=0
i=0
while [ $i -lt $num ]
do
    read x
    #sum=$((sum + x))
    let sum=sum+x
    let i=i+1
done
printf "%0.3f\n" $(echo "scale=5; $sum / $num" | bc -l)


Second solution.

#!/bin/bash

read x
sum=0
for i in `seq 1 $x`
do
    read y
    sum=$(( $sum+$y ));
    
done

sum=`echo $sum/$x | bc -l`;
printf "%.3lf\n" $sum


Third solution.

read N
export tot=`awk 'BEGIN {tot=0}; {tot+=$1}; END {print tot}'`
export avg=`echo "$tot/$N" | bc -l`
#echo $tot $N $avg
printf %.3f "$avg"