teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

検証コードを追記

2017/09/04 11:25

投稿

tacsheaven
tacsheaven

スコア13707

answer CHANGED
@@ -1,6 +1,19 @@
1
- 元の数値がマイナスのとき、結果が異なってくるはずです。
1
+ 元の数値がマイナスのとき、結果が異なります。
2
+ ```ruby
3
+ data = -1.2
4
+ print data.to_i
5
+ print "\n"
6
+ print data.floor
7
+ print "\n"
8
+ ```
9
+ この結果は
10
+ ```
11
+ -1
12
+ -2
13
+ ```
14
+ になります。
2
15
  -1.2 という数値で考えたとき、
3
16
  .to_i は単に小数点以下を削るだけなので -1 に、
4
- .floor では「その値を超えない最小の整数」なので、-2 ります。
17
+ .floor では「その値を超えない最小の整数」なので、-2 るのです。
5
18
 
6
19
  ※to_i は **より0に近いほうに丸める** に対し、.floor は**数直線上で左側の直近の整数**になります