Bug #5699

Windowsで一部のFloat値が正しく扱えない

Added by 剛 奥山 about 3 years ago. Updated about 3 years ago.

[ruby-dev:44918]
Status:Rejected
Priority:Normal
Assignee:-
ruby -v:ruby 1.9.2p290 (2011-07-09) [i386-mingw32] Backport:

Description

Windows XP SP3にて、

ruby 1.9.2p290 (2011-07-09) [i386-mingw32] で、
x = 0.002877 #=> 0.0028770000000000002
となってしまいます。

ruby 1.8.7 (2011-06-30 patchlevel 352) [i386-mingw32] では、
x = 0.002877 #=> 0.002877
となります。

History

#2 Updated by 剛 奥山 about 3 years ago

FAQでした、すみません。

1.9.2 は、より正しく表示出来るようになったということで
納得しました。

https://github.com/rdp/ruby_tutorials_core/wiki/ruby-talk-faq#floats_imprecise

1.1
=> 1.1 # in reality this probably doesn't equal exactly 1.1 deep down--but it's equal to 1.1's default so ruby 1.9.2 will display it as 1.1
0.9
=> 0.9
1.1-0.9
=> 0.20000000000000007 # now ruby 1.9.2 notices that "this 0.2 is not the same as the default float for 0.2" so it displays its full version to remind us of this fact.

#3 Updated by ujihisa . about 3 years ago

  • Status changed from Open to Rejected

Also available in: Atom PDF