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

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

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

作成日: 更新日:

基本的な使い方

roundメソッドは、有理数を丸める処理を実行するメソッドです。

このメソッドは、RubyのRationalクラスのインスタンスである有理数値を、指定された精度で丸めるために使用されます。

引数を指定せずにroundメソッドを呼び出した場合、有理数は最も近い整数に丸められます。この際、小数部分がちょうど0.5の場合(例えば2.5や3.5など)、結果が偶数になるように丸められます。これは「最近接偶数への丸め」と呼ばれる規則に基づいており、数値処理における公平性を保つための一般的な方法です。この場合、戻り値はIntegerオブジェクトとなります。

整数値を引数として渡すことで、丸める桁数を詳細に制御することができます。正の整数を引数に指定した場合、小数点以下の指定された桁数で有理数を丸め、結果を新たなRationalオブジェクトとして返します。例えば、Rational(1, 3).round(2)Rational(33, 100)を返します。一方、負の整数を引数に指定した場合、小数点より上の位(例えば10の位や100の位)で有理数を丸め、Integerオブジェクトを返します。例えば、Rational(12345, 1).round(-2)12300を返します。

このメソッドは、有理数を用いた計算結果を特定の精度で表示したり、整数値として扱いたい場合に非常に便利です。

構文(syntax)

1Rational(1234, 1000).round(2)

引数(parameters)

ndigits = 0

  • ndigits = 0: 丸めたい小数点以下の桁数を指定する整数。デフォルトは0で、最も近い整数に丸められます。

戻り値(return)

Integer または Float

Rationalオブジェクトを四捨五入した結果を返します。整数に丸める場合はInteger、浮動小数点数に丸める場合はFloatが返されます。

関連コンテンツ