OCaml mod中的模块化函数返回的结果与python中的模块化运算符不同。
OCaml:
# -1 mod 4
- : int = -1Python:
>>> -1 % 4
3为什么结果不同?
是否有在%中作为OCaml操作的标准模块功能?
发布于 2017-10-16 02:46:44
模的语义与整数除法的语义相联系(通常情况下,如果Q是整数除法a / b的结果,R是a mod b的结果,则a = Q * b + R必须始终为真),因此不同的整数除法对整数的舍入会产生不同的结果。
维基百科的文章模数运算有一个关于不同语言如何处理模块的非常广泛的表格。有几种常见的方法:
https://stackoverflow.com/questions/46758683
复制相似问题