【Shell案例】【小数点scale&bc】14、求平均值
2024-09-08 18:27:47
描述
写一个bash脚本以实现一个需求,求输入的一个的数组的平均值
第1行为输入的数组长度N
第2~N行为数组的元素,如以下为:
数组长度为4,数组元素为1 2 9 8
示例:
4
1
2
9
8
那么平均值为:5.000(保留小数点后面3位)
你的脚本获取以上输入应当输出:
5.000
思路:记录总和和行数,求平均,并进行四舍五入
awk
循环
方法1:awk
#!/bin/bash
awk '{
if(NR == 1) {
rows=$0
} else {
sum+=$0
}
}END{
printf("%.3f",sum/rows)
}' nowcoder.txt
方法2:循环
#!/bin/bash
num = 0
row = 0
sum = 0
while read line
do
# $line在外面表示当前行的值
# 在[]内部,line表示值
if [[ row -eq 0 ]]
then
num=$line
else
((sum+=line))
fi
((row++))
done < nowcoder.txt
echo "scale=3;$sum/$num" | bc
最新文章
- nodejs express 静态文件的路径
- win10环境下ue4使用游戏手柄输入
- [deviceone开发]-do_SlideListView的简单示例
- freemarker学习
- WebView 获取网页点击事件
- Jqeury获取table当前行与指定列
- BigInteger
- MYSQL 不排序
- 解决Android SDK Manager下载太慢问题(转)
- js 倒计时 已过去时间
- poj 2689 大范围内素数筛选
- C#后台代码编写图片地址Properties.Resources._1;
- Android数据库专家秘籍(七)经验LitePal查询艺术
- FileReader实现图片预览,并上传(js代码)
- js数字货币格式互转
- HTTP 05 安全
- 查找xml中的接口名及涉及表名并输出
- jQuery简单效果
- 电子印章在Odoo的实现步骤
- jdk各种老版本的下载链接
热门文章
- ProxySQL Disk库和Stats库
- SNI 路由和多协议端口的 TCP
- 配置logstash消费kafka多个topic,分别生成索引
- 【C++】从零开始的CS:GO逆向分析2——配置GLFW+IMGUI环境并创建透明窗口
- C#-01 关于C#中传入参数的一些用法
- MySQL实战,SQL语句
- gitee仓库上传文件的步骤
- .NET 7 RC 2 发布,倒计时一个月发布正式版
- 微信支付更新功能,商户转账到零钱 php版 (2022-10-12更新)
- 在vue中_this和this的区别