shell 只能处理整数的比较和运算,对于浮点数比较和运算,需要使用bc工具。

1.bc简介

bc 支持关系表达式。如果关系为假,则结果为0;如果关系为真,则结果为1。
POSIX bc 要求仅在 if、while 和 for 语句中使用关系表达式,并且只能在其中进行一项关系测试。

expr1 < expr2The result is 1 if expr1 is strictly less than expr2.expr1 <= expr2The result is 1 if expr1 is less than or equal to expr2.expr1 > expr2The result is 1 if expr1 is strictly greater than expr2.expr1 >= expr2The result is 1 if expr1 is greater than or equal to expr2.expr1 == expr2The result is 1 if expr1 is equal to expr2.expr1 != expr2The result is 1 if expr1 is not equal to expr2.

布尔运算也是合法的(POSIX bc 没有布尔运算)。所有布尔运算的结果都是 0 和 1(对于 false 和 true),就像在关系表达式中一样。

!expr  The result is 1 if expr is 0.expr && exprThe result is 1 if both expressions are non-zero.expr || exprThe result is 1 if either expression is non-zero.

shell 浮点数运算bc相关推荐

  1. shell 浮点数计算使用bc

    bash shell 变量只支持字符和整数,想要进行浮点数运算,需要使用bc: bc 我理解为bash shell 中的C语言执行: var1=20 var2=3.14159 var3=`echo & ...

  2. shell中实现浮点数运算

    linux下的浮点数运算shell实现浮点数运算 awk实现浮点数运算 bc实现浮点数运算 awk实现浮点数运算 AWK 是一种处理文本文件的语言,是一个强大的文本分析工具. 主要部分 awk '{p ...

  3. shell 数学运算

    数学运算之 expr expr操作符对照表 比较大小,只能对整数进行比较,需要加空格,linux 保留关键字要转义 num1=30 num2=50 expr $num1 \> $num2 查看上 ...

  4. 2 计算机组成原理第二章 数据的表示和运算 定点数运算 浮点数运算

    文章目录 1 进制转换 2 定点数表示及其运算 2.1 定点数表示 2.1.1 真值→补码 2.1.2 补码→真值 2.1.3 [XT]补 →[-XT]补 2.1.4 真值.原码.反码.补码转换关系图 ...

  5. PHP浮点数运算精度问题

    最近有客户反应商城订单金额总是不准确,总是相隔一分钱.检查相关代码逻辑都是正确的,就是运用了四则运算.大概推测问题可能出在浮点计算丢失精度.在<PHP程序员雷雪松的博客>中写过一篇关于JS ...

  6. php bc函数库,PHP高精确度运算BC函数库实例详解

    本文实例讲述了PHP高精确度运算BC函数库.分享给大家供大家参考,具体如下: /************************************************************ ...

  7. java浮点数误差_浮点数运算的误差

    浮点数运算的误差 在 JavaScript 中整数和浮点数都属于number 数据类型,所有数字都是使用64位浮点数形式储存,遵循IEEE-754双精度标准存储,即便整数也是如此. 所以我们在打印 1 ...

  8. Python 浮点数运算

    2019独角兽企业重金招聘Python工程师标准>>> 浮点数用来存储计算机中的小数,与现实世界中的十进制小数不同的是,浮点数通过二进制的形式来表示一个小数.在深入了解浮点数的实现之 ...

  9. python浮点数运算问题_python基础教程之. 浮点数运算:问题和局限

    14. 浮点数运算:问题和局限¶ 浮点数在计算机硬件中表示为以 2 为底(二进制)的小数.例如,十进制小数 0.125 是1/10 + 2/100 + 5/1000 的值,同样二进制小数 0.001 ...

最新文章

  1. 神经网络 | 基于脉冲耦合神经网络(PCNN)的图像特征提取(Matlab源代码)
  2. [linux][MongoDB] mongodb学习(一):MongoDB安装、管理工具、
  3. 专访腾讯产品总监邬沛君:TStack斩获OSCAR技术创新奖的背后
  4. 【英语学习】【Daily English】U02 Daily Routine L01 Sadly, my schedule is very tight.
  5. 【zookeeper】Zk创建空节点 不带数据的
  6. Euclidean, Manhattan, hop-count distance 区别
  7. hutool工具类的使用,国内自己封装的工具包,挺好用的
  8. Java能用来做什么的?
  9. java 项目cpu飙升故障排查
  10. redis的原理和源码-数据持久化方式AOF的介绍和源码解析
  11. java 多个文件合并,多个 MP3 合并,InputStream 合并
  12. html制作一个视频播放器,H5 打造属于自己的视频播放器(HTML 篇)
  13. 思科2960-S交换机初始化配置
  14. STM32 ISP烧录过程
  15. 20201212大一集训牛客网题之d题中学数学题
  16. 韦东山嵌入式第一期学习笔记DAY_1——3_1_linux命令入门演示
  17. Shader算法之Rim
  18. 使用MySQLTuner脚本检测、优化MySQL数据库
  19. 2013-12-IOS 获取最新设备型号方法
  20. Xcafe:Netty实现兼容SpringMVC的Web容器

热门文章

  1. 常用tcpdump命令
  2. layui 表格操作列按钮动态显示变换
  3. 量子计算机模拟黑洞纠缠,纠缠的量子比特可以用来探测黑洞吗?
  4. uni-app如何动态绑定背景图片资源
  5. 基于Cython编译整个Python项目并保留原项目结构
  6. 在matlab中为什么在使用fft后作图时要加绝对值
  7. Android与Javascript交互之入门
  8. C语言printf()的用法
  9. matlab可以对多张表同时操作吗,update操作多张表
  10. 2021年高考成绩查询宜春昌黎,2021年宜春中考志愿设置