【Ruby3.x】Rational::+()メソッドの使い方
+メソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
+メソッドは、レシーバーであるRationalオブジェクトに別の数値を加算するメソッドです。このメソッドは、数学的な加算(足し算)をRubyのRationalオブジェクトに対して行い、分数として表現された数値を正確に足し合わせることができます。
加算の対象となる数値は、メソッドの引数として渡されます。引数には、別のRationalオブジェクトはもちろんのこと、Integer(整数)やFloat(浮動小数点数)などの数値オブジェクトも指定可能です。Rationalオブジェクト同士の加算では、結果もRationalオブジェクトとして返されます。例えば、「1/2 + 1/3」のような計算では、結果は正確な「5/6」としてRationalオブジェクトで得られます。これにより、浮動小数点数演算で発生しがちな丸め誤差を避けて、厳密な分数計算を行うことが可能になります。
しかし、引数にFloatオブジェクトが指定された場合など、精度の異なる数値が混在する加算では、結果がFloatオブジェクトとして返されることがあります。これは、Rubyの数値計算において、より広い範囲の表現を可能にする型に結果が変換されるためです。したがって、常に分数での結果が必要な場合は、加算するすべての数値をRationalオブジェクトとして扱うことが重要です。
この+メソッドは、主に分数計算を必要とする場面や、より厳密な数値計算を行う際に利用されます。例えば、金融計算や科学技術計算など、正確な数値の扱いが求められるシステム開発において、Rationalオブジェクトとその加算機能は非常に有用です。
構文(syntax)
1Rational(1, 2) + Rational(1, 3)
引数(parameters)
other
- other: 結合するもう一方の有理数
戻り値(return)
Numeric
Rationalクラスの+メソッドは、レシーバーであるRationalオブジェクトと引数として渡されたNumericオブジェクト(整数、浮動小数点数、またはRationalオブジェクト)との加算結果をNumeric型のオブジェクトとして返します。