首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >math.fmod总是在做math.mod?

math.fmod总是在做math.mod?
EN

Stack Overflow用户
提问于 2011-08-16 10:52:38
回答 2查看 6K关注 0票数 4

我试图用以下代码找出math.fmod和math.mod之间的区别:

代码语言:javascript
复制
a={9.5 ,-9.5,-9.5,9.5}
b={-3.5, 3.5,-3.5,3.5}
for i=1,#a do
    if math.fmod(a[i],b[i])~=math.mod(a[i],b[i]) then
        print("yeah")
    end
end

它从来不印“耶”!我应该把A和B排列成什么来看“耶”?

math.fmod()的文档表示,它返回x除以y的其余部分,使商数接近于零。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-16 12:26:52

math.mod是与math.fmod相同的函数。实际上,math.mod的存在只是为了与以前的版本兼容;它没有在手册中列出。在代码中尝试math.modf而不是math.mod

票数 5
EN

Stack Overflow用户

发布于 2013-11-11 22:10:35

Lua中的Modulo被定义为“将商数除以负无穷远的剩余部分”- -链接在这里 --这与fmod的定义不同(正如您在最初的文章中所引用的)。

您真正需要做的是使用模块化运算符(%)而不是math.mod:

代码语言:javascript
复制
a={9.5 ,-9.5,-9.5,9.5}
b={-3.5, 3.5,-3.5,3.5}
for i=1,#a do
    if math.fmod(a[i],b[i]) ~= a[i] % b[i] then
        print("yeah")
    end
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7077036

复制
相关文章

相似问题

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