【Ruby3.x】Rational::quo()メソッドの使い方
quoメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
quoメソッドは、Rationalオブジェクトの値を指定された数値で割り算し、その結果を常に浮動小数点数(Float)として返すメソッドです。
このメソッドは、Rational(分子, 分母)という形式で表現される有理数オブジェクトに対して呼び出されます。引数として、数値(整数、浮動小数点数、または他のRationalオブジェクト)を受け取ります。割り算の結果は、厳密な分数表現ではなく、コンピュータで扱われる一般的な小数(浮動小数点数)になります。
例えば、Rational(1, 2)(1/2)というRationalオブジェクトに対してquo(2)を実行すると、結果は0.25というFloat値として返されます。これは、分数としての正確な値を一旦浮動小数点数に変換し、そのうえで割り算を行う、あるいは結果を浮動小数点数として表現することを示しています。
似た機能を持つ/演算子(スラッシュ演算子)とは異なり、quoメソッドは結果を常にFloatとして返します。/演算子の場合は、可能な限りRationalオブジェクトとして結果を保持しようとしますので、この点が重要な違いとなります。
数学的な厳密な分数表現ではなく、概算の小数値が必要な場合にquoメソッドは有用です。例えば、計算結果をグラフのプロットやユーザーインターフェース表示のために浮動小数点数として扱いたい場合などに適しています。分数としての精度を保ちたい場合は、/演算子を使用してください。
構文(syntax)
1Rational(1, 2).quo(3)
引数(parameters)
other
- other: 割る対象の数値(Rational、Integer、Floatなど)
戻り値(return)
Rational
Rationalオブジェクト同士の割り算を実行し、その結果を新しいRationalオブジェクトとして返します。