数値クラスと配列クラス
☆数値クラス
数値クラスまたの名をNumericクラスといいます。
数値クラスの構成
Numeric ―― Integer ―― Fixnum
| |― Bignum
|― Float
整数(Integer)クラスと浮動小数(Flaot)クラスは数値(Numeric)クラスを継承しています。
普通の整数(Fixnum)クラスと大きな整数(Bignum)クラスは、整数(Integer)クラスを継承しています。
整数と少数は必ず数値の中に含まれます。
サブクラスは、スーパークラスのインスタンスの範囲を超えることはできません。
さて、Numericクラス内で使えるメソッドとは、どういったものでしょう。
★divmodメソッド
1.概要
xをyで割ったときの商と余を配列で返してくれる。
2.記述方法
x.divmod(y)
具体的に書くと
p 100.divmod(3) #=> [33, 1]
p 200.divmod(7.5) #=> [26, 5.0]
p -200.divmod(7.5) #=> [-27, 2.5]
※注意
xの値が負であると、余が正になるまで負の商で割ります。
★moduloメソッド
1.概要
xをyで割ったときの余を返してくれる。
2.記述方法
x.modulo(y)
または、
x % y
具体的に書くと
p 100.modulo(3) #=> 1
p 200 % 7.5 #=> 5.0
p -200 % 7.5 #=> 2.5
※注意
xの値が負であると、余が正になるまで負の商で割ります。
★remainderメソッド
1.概要
xをyで割ったときの余を返してくれる。
moduloメソッドとは違い、xの値が負であると、負の商で割った、負の余を返します。
2.記述方法
x.remainder(y)
具体的に書くと、
p -200.remainder(7.5) #=> -5.0
★..と...の違い