LoginSignup
0
0

More than 1 year has passed since last update.

[Ruby] 数値の四捨五入・切り捨て・切り上げ

Last updated at Posted at 2021-06-26

環境

Ruby 2.6.3

はじめに

本記事はRubyの四捨五入、切り捨て、切り上げについて解説したものです
Rubyでは標準で数値を扱う、色々なメソッドが用意されているので、それを利用して実行していきます。

本題

1. 四捨五入

四捨五入する場合は、Floatクラスのroundメソッドを使用します。

1.4.round #=> 1
1.5.round #=> 2
-1.4.round #=> -1
-1.5.round #=> -2

roundに引数を指定すると、指定した数字の桁数に対して四捨五入を実行します。
また、整数部分を四捨五入したい場合は、引数に負数を指定します。

1.23456.round(2) #=> 1.23
1.23456.round(3) #=> 1.235
123456.round(-2) #=> 123500
123456.round(-3) #=> 123000
123456.round(-4) #=> 120000

2. 切り捨て

切り捨てを行う場合はfloorメソッドを使用します。

1.4.floor #=> 1
1.5.floor #=> 1
-1.4.floor #=> -2
-1.5.floor #=> -2

小数点N桁の切り捨てを行いたい場合は引数に桁数を指定することで実行することができます。
floorの場合も、整数部分を四捨五入したい場合は、引数に負数を指定します

1.23456.floor(2) #=> 1.23
1.23456.floor(3) #=> 1.234
123456.floor(-2) #=> 123400
123456.floor(-3) #=> 123000

3. 切り上げ

切り上げを行う場合はceilメソッドを使用します。

1.4.ceil  #=> 2
1.5.ceil  #=> 2
-1.4.ceil #=> -1
-1.5.ceil #=> -1

小数点N桁の切り上げを行いたい場合は先ほど同様数に桁数を指定することで実行することができます。
こちらも整数部分を四捨五入したい場合は、引数に負数を指定します

1.23456.ceil(2) #=> 1.24
1.23456.ceil(3) #=> 1.235
123456.ceil(-2) #=> 123500
123456.ceil(-3) #=> 124000

参考

Float#floor
Float#ceil
Float#round

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0