首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >科学记数法是否会影响Perl的精度?

科学记数法是否会影响Perl的精度?
EN

Stack Overflow用户
提问于 2010-01-13 20:49:48
回答 1查看 747关注 0票数 2

我在Perl中遇到了一个奇怪的行为。下面的减法结果应该是零(这是在Python中做的):

代码语言:javascript
复制
print 7.6178E-01 - 0.76178
-1.11022302462516e-16

为什么会发生这种情况,如何避免呢?

P.S.效果出现在"v5.10.0为x86_64-linux-gnu-thread-multi构建“(Ubuntu 9.04)和"v5.8.9为darwin-2 2level构建”(Mac OS 10.6)上。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-13 22:04:03

这并不是说科学记数法对精度的影响比以二进制表示的浮点记数法的局限性更大。请参阅perlfaq4的答案。对于任何依赖底层架构进行数字存储的语言来说,这都是一个问题。

  • Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?
  • Why is int() broken?

如果您需要更好的数字处理,请查看bignum杂注。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2056681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档