Chinaunix

标题: linux 下 怎样计算科学计数法表示的数据 [打印本页]

作者: loveguo7    时间: 2010-09-09 15:56
标题: linux 下 怎样计算科学计数法表示的数据
例如:
    比如两个值相加
    1.9274838549e+01 + 6.8220021491e+07
      的结果是什么?
作者: 昭襄王    时间: 2010-09-09 16:10
科学计数法是这样的?
作者: 99超人    时间: 2010-09-09 16:23
提示: 作者被禁止或删除 内容自动屏蔽
作者: 昭襄王    时间: 2010-09-09 16:35
[oracle@imeg02 zgw]$ echo "1.9274838549e+01  6.8220021491e+07"|awk  '{printf "%f",$1+$2}'
68220040. ...
99超人 发表于 2010-09-09 16:23


python计算结果结果是
68220040.765838549
ubuntu计算器计算结果是
31.783568813
怎么回事?
作者: 好看的附件    时间: 2010-09-09 16:39
回复 4# 昭襄王


    6.8220021491e+07这个应该是6.8220021491*10^7吧
作者: 99超人    时间: 2010-09-09 16:40
提示: 作者被禁止或删除 内容自动屏蔽
作者: 昭襄王    时间: 2010-09-09 16:48
各种计算环境科学计数法的写法不一样?ubuntu计算器看来把e认成别的了
作者: Shell_HAT    时间: 2010-09-09 19:59
回复 4# 昭襄王


#echo "1.9274838549e+01  6.8220021491e+07"|awk  '{printf "%f\n",$1+$2}'
68220040.765839
#uname -a
Linux ubuntu 2.6.24-22-generic #1 SMP Mon Nov 24 19:35:06 UTC 2008 x86_64 GNU/Linux

作者: 昭襄王    时间: 2010-09-11 09:16
回复  昭襄王
Shell_HAT 发表于 2010-09-09 19:59



    我是说gnome桌面自带的那东西
作者: ddgfff    时间: 2010-09-11 13:46
echo `perl -e"print 1.9274838549e+01 + 6.8220021491e+07"`
68220040.7658385
作者: ddgfff    时间: 2010-09-11 13:56
echo "1.9274838549e+01 + 6.8220021491e+07" | awk '{printf"%.30f\n",$1+$3;}'
68220040.765838548541069030761718750000

echo `perl -e"printf(\"%.30f\n\",1.9274838549e+01 + 6.8220021491e+07);"`
68220040.765838548541069030761718750000

两个结果一样。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2