为什么一个简单的计算 returns 不同的结果 ruby
Why a simple calculation returns different result in ruby
我不是数学专家,但以下操作在 ruby 中给出的结果与我尝试过的任何其他语言或计算器中的结果不同:
Ruby:
(289 / 30 * 30) - (149 / 30 * 30)
=> 150
世界其他地区:
(289 / 30 * 30) - (149 / 30 * 30)
140
非常感谢解释
这是给你的整数数学。 289/30 等于 9。顺便说一下,如果您使用 //
进行整数除法,则 Python 也是如此。
(289//30*30) - (149//30*30) = 150
这是因为数据类型 ruby uses for dividing,int
缺少结果的小数部分。
在Ruby中:
289 / 30
=> 9
9 * 30
=> 270
289.0 / 30
=> 9.633333333333333
在Python(例如):
>>> 289 / 30
9.633333333333333
>>> 9.63333 * 30
288.9999
我不是数学专家,但以下操作在 ruby 中给出的结果与我尝试过的任何其他语言或计算器中的结果不同:
Ruby:
(289 / 30 * 30) - (149 / 30 * 30)
=> 150
世界其他地区:
(289 / 30 * 30) - (149 / 30 * 30)
140
非常感谢解释
这是给你的整数数学。 289/30 等于 9。顺便说一下,如果您使用 //
进行整数除法,则 Python 也是如此。
(289//30*30) - (149//30*30) = 150
这是因为数据类型 ruby uses for dividing,int
缺少结果的小数部分。
在Ruby中:
289 / 30
=> 9
9 * 30
=> 270
289.0 / 30
=> 9.633333333333333
在Python(例如):
>>> 289 / 30
9.633333333333333
>>> 9.63333 * 30
288.9999