たとえば、次の IRB セッションを見てください。
1.9.3-p385 :046 > float = func_that_creates_large_float
=> 1.5815450433041317e+51
1.9.3-p385 :047 > float.to_i
=> 1581545043304131697954259018410479150921451567054848
返された整数が float と同じ値を表していることを確認できますか? 主な理由は、Ruby のドキュメントto_i
で Float クラスのメソッドが「整数に切り捨てられた float を返す」と説明されているためです。「切り詰められた」という言葉が飛び出します。
編集:私の状況を説明すると、なぜ私がこれを求めているのかが明確になると思います. 整数になることがわかっている大きな整数の立方根をとろうとしています。立方根関数は float を使用して計算を行い、結果を float として返します。非科学的表記法の値が必要ですが、これにアプローチする方法がわかりません。
ありがとうございました。