プログラミングでは値段の計算やデータ数のカウントを取るときなど、さまざまな場面で数値を扱う場面が出てきます。
ここでは Ruby で整数や小数を扱う基本的な方法を学んでいきましょう。
目次
基本的な計算
計算を行うプログラム例と実行結果を紹介していきます。
それぞれのプログラムは「result」という変数に計算結果を格納し、p メソッドで結果を出力しています。
足し算
足し算は +
を使って行います。
プログラム
result = 1 + 2
p result
実行結果
3
プログラム
result = 1.2 + 3
p result
実行結果
4.2
引き算
引き算は -
を使って行います。
プログラム
result = 3 - 1
p result
実行結果
2
プログラム
result = 2 - 1.3
p result
実行結果
0.7
かけ算
かけ算は *
を使って行います。
プログラム
result = 2 * 3
p result
実行結果
6
プログラム
result = 2 * 3.1
p result
実行結果
6.2
割り算
割り算は /
を使って行います。
プログラム
result = 4 / 2
p result
実行結果
2
プログラム
result = 10 / 3
p result
実行結果
3
10÷3
の答えは 3.333...
となるところですが、整数同士で割り算をした場合、計算結果は小数点以下が省かれて整数として表示されます。
小数での正確な答えを出したい場合は、以下のように計算の中のいずれかの数値に小数を含める必要があります。
プログラム
result = 10.0 / 3
p result
実行結果
3.3333333333333335
プログラム
result = 10 / 3.0
p result
実行結果
3.3333333333333335
割り算の余り
割り算の余りは %
を使って取得できます。
プログラム
result = 10 % 3
p result
実行結果
1
10÷3
の答えは 3余り1 なので、余り部分の 1
が取得されました。
計算の順番
長い計算を行う場合、演算される順番は、まず かけ算(*
)と割り算(/
)、その後に足し算(+
)と引き算(-
)が処理されます。
また ( )
をつけると、その箇所が先に計算されます。
以下の計算式で考えてみましょう。
6 + 4 / 2
この場合は 1 + 4
ではなく、4 / 2
が先に処理されます。
プログラム
result = 6 + 4 / 2
p result
実行結果
8
今度は以下のようにしてみます。
(6 + 4) / 2
こうすると、6 + 4
が先に処理され、結果が先ほどと変わります。
プログラム
result = (6 + 4) / 2
p result
実行結果
5
以下のようにして ( )
の中に さらに ( )
を入れることもできます。内側の ( )
から順番に計算されます。
プログラム
result = 10 / ((6 + 4) / 2)
p result
実行結果
2
四捨五入・切り上げ・切り捨て
小数を四捨五入・切り上げ・切り捨てして整数に変換することができます。
四捨五入
小数を四捨五入して整数で出力する場合は、round メソッドを使います。
プログラム
p 1.4.round
実行結果
1
プログラム
p 1.5.round
実行結果
2
切り上げ
小数を切り上げして整数で出力する場合は、ceil メソッドを使います。
プログラム
p 1.2.ceil
実行結果
2
切り下げ
小数を切り下げして整数で出力する場合は、floor メソッドを使います。
プログラム
p 1.8.floor
実行結果
1
絶対値を取得
整数や小数の絶対値を取得する場合は、abs メソッドを使います。
プログラム
p -3.abs
実行結果
3
プログラム
p 1.2.abs
実行結果
1.2
数値の型を変換
整数を小数にする
整数を小数(Float型)に変換する場合は、to_f メソッドを使います。
プログラム
p 2.to_f
実行結果
2.0
小数を整数にする
小数を整数に変換する場合は、to_i メソッドを使います。
プログラム
p 2.7.to_i
実行結果
2
変換の際に、小数点以下は切り捨てられます。
整数や小数を文字列にする
数値を文字列に変換する場合は、to_s メソッドを使います。
プログラム
p 2.to_s
実行結果
"2"
p メソッドで出力すると、文字列は " "
で表されるので、文字列に変換されていることが確認できます。
プログラム
p 3.1.to_s
実行結果
"3.1"
まとめ
以上、Ruby で整数や小数を扱う基本的な方法でした!
ここまでの内容をまとめておきます。
+
,-
,*
,/
を使って四則演算、%
で割り算の余りを取得できる。- かけ算(
*
)と割り算(/
)、その後に足し算(+
)と引き算(-
)が処理される。( )
をつけると、その箇所が先に計算される。 - 小数の四捨五入は round メソッド、切り上げは ceil メソッド、切り下げは floor メソッドを使う。
- 整数や小数の絶対値を取得する場合は abs メソッドを使う。
- 整数を小数(Float型)に変換する場合は to_f メソッド、小数を整数に変換する場合は to_i メソッド、数値を文字列に変換する場合は to_s メソッドを使う。