代码改变世界

求平均值

2021-03-16 20:51  jetwill  阅读(143)  评论(0编辑  收藏  举报
题目描述
写一个bash脚本以实现一个需求,求输入的一个的数组的平均值

第1行为输入的数组长度N
第2~N行为数组的元素,如以下为:
数组长度为4,数组元素为1 2 9 8
示例:
4
1
2
9
8

那么平均值为:5.000(保留小数点后面3位)
你的脚本获取以上输入应当输出:
5.000

方法一

awk '
BEGIN {sum=0;}
{
    
	if(NR==1){
		num=$0
	}else
	{
		sum+=$0
	}
	
	
}
END{printf("%.3f",sum/num)}
' nowcoder.txt

方法二

read cnt
sum=0
cnt_cp=0
while [ $cnt -gt 0 ]
do
    read num
    let "sum+=num"
    let "cnt--"
    let "cnt_cp++"
done
echo "scale=3;$sum/$cnt_cp" | bc