我只是想得到一个百分比。
irb(main):001:0> (25 / 50) * 100
=> 0
正如我的计算器所证实的那样,这绝对应该等于 50(将相同的方程复制并粘贴到 gcalc 中)。为什么 Ruby 拒绝这样做?
它正在做整数除法。
基本上,25 是一个整数(整数),50 也是一个整数,因此当您将一个除以另一个时,它会得到另一个整数。
25 / 50 * 100 = 0.5 * 100 = 0 * 100 = 0
更好的方法是先乘法,然后除法。
25 * 100 / 50 = 2500 / 50 = 50
您还可以通过指定小数点来显式使用浮点算术,如下所示:
25.0 / 50.0 * 100 = 0.5 * 100 = 50
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)