【发布时间】:2025-12-26 05:20:08
【问题描述】:
谁能解释下面的负数除法结果:
2.6.1 :001 > -25/24
=> -2
2.6.1 :002 > 25/24
=> 1
为什么是-2 而不是-1?
更多关于奇怪行为的例子:
2.6.1 :003 > 24/25
=> 0
2.6.1 :004 > -24/25
=> -1
有什么想法吗? 谢谢。
【问题讨论】:
-
因为
(-1 - 1/24)的楼层等于-2。 -
这是否意味着在整数除法的情况下Ruby总是在后台调用
#floor?而(-1 - 1/24)是从哪里来的? -
以下是行为背后的更详细解释:*.com/a/19518866/1954610
-
@TomLord 哇,所以有一些类似的历史讨论,非常感谢!在使用 Ruby 10 年后,直到今天我才问过自己这个问题 :)。
标签: ruby