linux下的浮点数运算shell实现浮点数运算

  • awk实现浮点数运算
  • bc实现浮点数运算

awk实现浮点数运算

AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。

主要部分 awk ‘{printf “%0.8f\n”, $1/$2}’
使用printf实现小数点后数值的保留。
0.8f保留小数点后8位 。
$1/$2表示传入的当前行的第一个数据除以第二个数据。
例如

相除

v=$(echo $a $b|awk '{printf "%0.4f\n", $1/$2}')
v=`echo $a $b|awk '{printf "%0.4f\n", $1/$2}'`
#表示a/b,保留4位小数

相加

while read v1 v2
dov=$(echo $a $b|awk '{printf "%0.4f\n", $1+$2}') >> result.txt
done < count.txt
从count.txt逐行读取数据,逐行将第一列第二列相加并将结果追加到result.txt中。

相除,可复制运行查看结果

a=1
b=3
v=$(echo $a $b|awk '{printf "%0.8f\n", $1/$2}')
echo "$a / $b = $v"

进行大量计算时,使用awk效率较高

bc实现浮点数运算

使用bc命令需要主机已有bc命令。使用bc指令默认不指定scale,默认为0
scale表示保留的小数点后位数。
若操作数的小数位数大于scale,
例如:

a=1.1111111
b=2
b1=$(echo "scale=2;$a/$b"|bc)
#作用相同
b1=`echo "scale=2;$a/$b"|bc`    #输出的小数位数以a为准

可运行查看

a=2.111
b=2
b1=$(echo "scale=2;$a/$b"|bc)
b2=$(echo "$a/$b"|bc)
b3=$(echo "scale=6;$a/$b"|bc)
echo $b1 $b2 $b3
#结果为 1.05 1 1.055500

当相除结果小于1时,小数点前的0会省略,使用字符拼接0即可

a=2.111
b=5
b1=$(echo "scale=2;$a/$b"|bc)
b2=$(echo "$a/$b"|bc)
b3=$(echo "scale=6;$a/$b"|bc)
echo $b1 $b2 $b3
#结果为 .42 0 .422200b4=`echo 0$b3`
echo $b4
#结果为0.422200

shell中实现浮点数运算相关推荐

  1. shell中的浮点数运算之bc命令简介

    在shell中,当我们进行浮点数的运算,特别是用于浮点数间的比较大小时,往往会出现一些问题,这里使用bc命令,帮你解决困难 它的一般格式: var=`echo "option1;option ...

  2. shell中的算数运算

    shell中的算数运算 首先这里所说的算术运算是指加法(+), 减法(-),乘法(*),整除(/), 求余(%)四种运算,可以通过添加括号改变优先级,并且只能对整数进行运算(Linux Bash Sh ...

  3. linux shell数学计算器,技术|使用 GNU bc 在 Linux Shell 中进行数学运算

    在 shell 中使用 bc 更好地做算数,它是一种用于高级计算的数学语言. 大多数 POSIX 系统带有 GNU bc,这是一种任意精度的数字处理语言.它的语法类似于 C,但是它也支持交互式执行语句 ...

  4. linux中bc用法英文,使用GNU bc在Linux Shell中进行数学运算

    在 shell 中使用 bc 更好地做算数,它是一种用于高级计算的数学语言. 大多数 POSIX 系统带有 GNU bc,这是一种任意精度的数字处理语言.它的语法类似于 C,但是它也支持交互式执行语句 ...

  5. Python中关于浮点数运算的不确定尾数的解释

    一.浮点数类型 与数学中实数概念一致,带有小数点及小数的数字.浮点数取值范围和小数精度都存在限制,但常规计算可忽略. 取值范围数量级约-10308到10308,精度数量级10-16. 二.浮点数运算的 ...

  6. python减法精确度不准是什么问题,聊聊Python中的浮点数运算不准确问题

    大家好,老 Amy 来了.之前就意识到一个问题,但是最近又有朋友提出来了,所以就想着干脆记录下来,分享给大家叭~ 啥问题呢?请看题: 也就是说,需要大家计算1.1-1的值,很多朋友会说:"e ...

  7. shell中的数学运算

    一.shell中支持的算术 算术运算符 说明/含义 +.- 加法(或正号).减法(或负号) *./.% 乘法.除法.取余(取模) ** 幂运算 ++.– 自增和自减,可以放在变量的前面也可以放在变量的 ...

  8. linux shell中小数的运算

    对于在Shell中进行小数数字的计算,其实方法有很多,但是常用的方法都有其弱点: 1.bc bc应该是最常用的Linux中计算器了,简单方便,支持浮点. root@localhost:~# echo ...

  9. 关于JS中的浮点数运算

    文章目录 浮点数的存储 浮点数的运算 如何解决 参考 更新:2020/08/21--如何避开JavaScript浮点数计算精度问题(如0.1+0.2!==0.3)讲的很全面 这篇文章起于「查缺补漏」送 ...

最新文章

  1. 为什么放弃治疗_百度百科
  2. 001.Parted工具使用
  3. WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换
  4. “老师,我写着写着就 强制交卷了……”
  5. linux内核计算次方,linux内核中的循环缓冲去的设计与实现
  6. Git和Github详细入门教程
  7. 经纬创投:我们研究了200多家公司的融资条款,告诉你如何防止被“套路”
  8. 记一次awvs14安装、破解之路~
  9. HTML 实现仿 Windows 桌面主题特效
  10. 当 JS 大猪蹄子遇到 HTML 小姐姐
  11. 资本市场+金融科技,广州试点能否擦出新火花?
  12. 基于springboot的会员后台管理系统
  13. 01背包,完全背包的区别
  14. 从表征到行动---意向性的自然主义进路(续六)
  15. 课堂结队作业:二维数组(2)
  16. 金蝶EAS客户端自定义菜单脚本导出
  17. 十字链表与邻接多重表的画法
  18. 什么是云管平台?一个正在兴起的市场!
  19. 图片文字转word文档的巧妙方法
  20. Excel中数字位数不足前面补0

热门文章

  1. nagios插件之监控MQA日志文件
  2. java计算机毕业设计小微企业人事管理系统源码+lw文档+系统+数据库
  3. Python实现OSM地图数据解析——Pydriosm
  4. Redis学习笔记---Redis的事务
  5. 乐优商城 leyou-cart 模块详解
  6. 热点新闻(关注国家大事、娱乐新闻、身边小事...)
  7. webpack打包的时候自动删除dist文件夹
  8. java生成二维码与海报合并组装在一起后产出Base64字符串
  9. 寻找多数元素(主元素)
  10. Sublime编辑LaTex