0
は^ 5 3考える(3 ** 5または3 * 3 * 3 * 3 * 3)/どのようにRubyは次の操作を実行しないのはなぜ243なぜRuby Math.log関数が間違った値を返すのですか?
=:
n = 243
Math.log(n,3)
returns:
4.999999999999999
Math.log(243)/Math.log(3)
returns:
4.999999999999999
3**Math.log(n,3)
returns:
242.99999999999977
最後のものは実際に取得することを私。何かここで間違っているのですか?私は何かが欠けている?どちらも?
ありがとうございます!
"私は何かが足りない" - 浮動小数点数学。 –
任意精度の浮動小数点数が必要な場合は、 'flt' gem:' require 'flt/sugar'を使用できます。 D.math {log(3 ** 5,3)} ' しかしパフォーマンスが低下することに注意してください。 – michau