Fixnum→Floatへ
簡単な計算をしてみます。
price = 2000 p price #=> 2000 p price * 0.9 #=> 1800.0 price = 10000 p price #=> 10000 discount_price = price * 0.9 p discount_price #=> 9000.0
10000に0.9を掛けると9000ではなく、9000.0になります。両者の違いを.classで調べてみます。
price = 10000 p price.class #=> Fixnum discount_price = price * 0.9 p discount_price.class #=> Float
10000はFixnumですが、9000.0はFloatのようです。