【Ruby3.x】Rational::truncate()メソッドの使い方
truncateメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
truncateメソッドは、Rationalオブジェクトの値を0の方向に丸めて(切り捨てて)整数を返すメソッドです。有理数であるレシーバ(メソッドを呼び出すオブジェクト)が正の値であれば小数点以下を切り捨て、負の値であれば小数点以下を上げて0に近づけるように切り捨てます。例えば、2.7は2に、-2.7は-2になるような処理を行います。
このメソッドは、Rationalクラスのインスタンスに対して使用され、その結果は常にIntegerオブジェクトとして返されます。例えば、Rational(7, 3)(約2.333...)に対してtruncateメソッドを呼び出すと、結果は2となります。また、Rational(-7, 3)(約-2.333...)に対してtruncateメソッドを呼び出すと、結果は-2となります。
これは、数値の小数点以下の部分を取り除き、0に最も近い整数部を求める操作と考えることができます。同様の丸め処理を行うメソッドとしてfloor(負の無限大方向へ丸める)、ceil(正の無限大方向へ丸める)、round(最も近い整数へ丸める)などがありますが、truncateは常に0の方向へ丸めるという点が特徴です。例えば、Rational(7, 3).floorは2、Rational(7, 3).ceilは3、Rational(7, 3).roundは2となりますが、負の値の場合に違いが明確になります。Rational(-7, 3).floorは-3、Rational(-7, 3).ceilは-2、Rational(-7, 3).roundは-2となるのに対し、truncateは常にRational(-7, 3).truncateで-2を返します。
構文(syntax)
1Rational(3, 2).truncate
引数(parameters)
ndigits = 0
- ndigits = 0: 小数点以下の桁数を指定する整数
戻り値(return)
Integer
Rationalオブジェクトを小数点以下で切り捨てた整数値を返します。