免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 974 | 回复: 5
打印 上一主题 下一主题

关于计算的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-12-18 15:39 |只看该作者 |倒序浏览
我在shell 中用 expr 可以计算整数
带有小数点的数值计算怎么办
比如1.2+2.1怎么实现
谢谢

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-12-18 15:44 |只看该作者

关于计算的问题

用awk!
awk 'BEGIN{print 2.1+2.1}'
或者用bc!
echo 2.1+12.2|bc
P.s:因为shell不能进行浮点数的算术运算

论坛徽章:
0
3 [报告]
发表于 2004-12-18 16:10 |只看该作者

关于计算的问题

可是
要是变量怎么办
a=1.2
b=2.1
c=a+b

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2004-12-18 16:35 |只看该作者

关于计算的问题

原帖由 "ziop760514" 发表:
可是
要是变量怎么办
a=1.2
b=2.1
c=a+b

一样!!!
awk 'BEGIN{print '"$a"'+'"$b"'}'
awk 'BEGIN{c='"$a"'+'"$b"';print c}'
echo $a+$b|bc
这样的实例论坛里很多,搜一下!

论坛徽章:
0
5 [报告]
发表于 2004-12-18 20:05 |只看该作者

关于计算的问题

不要嫌我烦
可是问题还是没有解决
a=11111111111.22
b=22222222222.11
c=$(awk 'BEGIN{print '$a' - '$b' }')
echo $c
-1.11111e+10
这不是我想要的结果
我想要的是
-111111111111.11

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2004-12-18 20:15 |只看该作者

关于计算的问题

像处理这么样的浮点数,还是用bc比较精准
echo $a-$b|bc -l
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP