首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么地板(5-2*eps)<5错误?

为什么地板(5-2*eps)<5错误?
EN

Stack Overflow用户
提问于 2014-11-05 16:26:07
回答 1查看 98关注 0票数 2

在我看来,Matlab评估floor(5-eps) < 5是错误的,这似乎是荒谬的。事实上,即使是floor(5-2*eps) < 5也是错误的。

这就是我所认为的bug,因为eps仅仅是关于1e-16的--而不是最小的双值。是否有具体的原因,为什么Matlab返回假?那里有什么想法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-05 16:32:09

你想要使用eps(x),而不仅仅是eps

eps( X )是从abs(X)到下一个更大的浮点数的正距离,与X的精度相同。

实际上,如果您比较xx+eps(x)的HEX表示,通常它们在尾数中应该有一点不同:

代码语言:javascript
运行
复制
>> format hex
>> x = 5
x =
   4014000000000000
>> x + eps(x)
ans =
   4014000000000001
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26762136

复制
相关文章

相似问题

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