Help us understand the problem. What is going on with this article?

【Ruby】小数点以下の桁数を指定して四捨五入、切り上げ、切り捨て!

More than 1 year has passed since last update.

はじめに

今回は、少数の桁数を指定して、四捨五入や切り上げ切り捨てを行う方法をまとめました。
平均値などを算出する際に、どうしても少数になってしまう場合は多いです。
そんな時に小数点以下の桁数を統一する必要性が出てきます。
では早速説明に入ります:cop:

小数点以下N桁で四捨五入

roundメソッド

roundメソッドは、引数に小数点以下の桁数を入力することにより、それより下の桁を四捨五入してくれます。
小数点以下2桁までを表示させたい場合はround(2)
小数点以下3桁までを表示させたい場合はround(3)
以下が例です。

100.3333.round
# 出力結果 ==> 100

100.3333.round(1)
# 出力結果 ==> 100.3

100.3383.round(2)
# 出力結果 ==> 100.34

100.3399.round(3)
# 出力結果 ==> 100.34
# この場合、小数点以下4桁目が四捨五入されるが3桁目の元の値が9なのでさらに繰り上がって100.34になる。

小数点以下N桁で切り上げ

ceilメソッド

こちらもroundメソッドと同様、引数で桁数を指定してあげてください!
以下が例です。

100.3333.ceil
# 出力結果 ==> 101

100.3333.ceil(1)
# 出力結果 ==> 100.4

100.3383.ceil(3)
# 出力結果 ==> 100.339

100.3399.ceil(3)
# 出力結果 ==> 100.34

小数点以下N桁で切り捨て

floorメソッド

こちらもroundメソッドと同様引数で桁数を指定してあげてください!
以下が例です。

100.3333.floor
# 出力結果 ==> 100

100.3333.floor(1)
# 出力結果 ==> 100.3

100.3383.floor(3)
# 出力結果 ==> 100.338

さいごに

以上です!とても簡単ですね。
四捨五入するのか、切り上げもしくは切り捨てるのかは、プロジェクトによっても様々だと思います。
くれぐれも間違えて使用しないようにだけ気をつけてください!

tomokichi_ruby
販売業から未経験でエンジニア転職を目指し、自社開発企業から内定頂き今年入社しました💻学んだことをアウトプットしていきたいと思います! 20代♀/おしゃれ/美容/旅行好き
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away