- Ruby 初心者スレッド Part 55
675 :デフォルトの名無しさん[sage]:2014/10/25(土) 00:09:39.99 ID:L2ksR7r0 - a = 1.0
a.floor == a # => true a = 1.1 a.floor == a # => false こういうこと?
|
- Ruby 初心者スレッド Part 55
684 :デフォルトの名無しさん[sage]:2014/10/25(土) 14:21:19.99 ID:L2ksR7r0 - >>677
無理数が入るものを有限桁しか持てない計算機で計算させるんだから、 その誤差を考えて計算させないと意味が無い これはRubyに限った話じゃなく、計算機に計算をさせる上で必ず考慮しなければ ならないポイント
|
- Ruby 初心者スレッド Part 55
686 :デフォルトの名無しさん[sage]:2014/10/25(土) 15:03:54.32 ID:L2ksR7r0 - EPS = 1e-10
(a.round - a).abs < EPS みたいにやるのがよくある方法だね (ただしaがそれほど大きくないという条件はつくけど)
|
- Ruby 初心者スレッド Part 55
690 :デフォルトの名無しさん[sage]:2014/10/25(土) 19:46:48.42 ID:L2ksR7r0 - >>687
有限桁の計算機で計算する以上、無理数が混じった計算で整数かどうかを正確に 判定することなんてできないよ
|