Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】Float::to_r()メソッドの使い方

to_rメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

to_rメソッドは、RubyのFloatクラスに属するメソッドで、浮動小数点数を有理数に変換するメソッドです。このメソッドは、Float型の数値をRational型の値に変換します。浮動小数点数(Float)は、コンピュータ内部で2進数を用いて近似的に表現されるため、私たちが日常的に使う10進数の小数とは異なり、わずかな誤差を含むことがあります。

to_rメソッドを利用することで、このような浮動小数点数を厳密な分数の形、つまり有理数(Rational)として表現できるようになります。有理数とは、整数分の整数で表せる数のことです。これにより、浮動小数点数の内部表現に起因する誤差を回避し、より正確な数値計算や厳密な数値の比較が必要な場面で、その精度を保証することができます。

例えば、0.5.to_r1/2という有理数を返します。また、0.1のような一見単純な小数であっても、0.1.to_r1/10という厳密な有理数を返します。これは、Float型が保持している内部的な2進数表現を基に、最も近い厳密な分数表現を見つけるためです。金融計算や科学技術計算など、数値の厳密性が極めて重要なシステム開発において、to_rメソッドは浮動小数点数の誤差問題を解決し、正確な比率や数値を扱うための非常に有効な手段となります。

構文(syntax)

10.5.to_r

引数(parameters)

引数なし

引数はありません

戻り値(return)

Rational

Floatクラスのto_rメソッドは、レシーバーである浮動小数点数値を、それと等価な有理数(Rationalオブジェクト)として返します。

関連コンテンツ

関連プログラミング言語