Rubyについて Part 16
■ このスレッドは過去ログ倉庫に格納されています
0752デフォルトの名無しさん
2005/09/18(日) 01:33:38> ruby -v
ruby 1.8.2 (2004-12-25) [i386-mswin32]
> ruby -e 'p 2**2**2**2'
65536
> ruby -e 'p 2**2**2**2**2'
2003529930406846464979072351560255750447825
(省略)
22087777506072339445587895905719156736
# 19729桁
> ruby -e 'p 65536**2'
4294967296
> ruby -e 'p 2**2**2**2**2**2'
c:/programs/ruby/1.8.12-15/lib/ruby/1.8/rational.rb:365: warning: in a**b, b may be too big
c:/programs/ruby/1.8.12-15/lib/ruby/1.8/rational.rb:365: warning: Bignum out of Float range
Infinity
つまり2^4、2^5、2^6の結果を出力させているんですけど、
2^5を 2**2**2**2**2として実行したときにわけわからん出力になります。
2^6のときは警告はですんですが。
これってバグですか?仮にバグだとしてなぜこんな出力になっちゃうんでしょう?
ちなみに、
ruby 1.8.2 (2004-12-25) [i386-cygwin]
ruby 1.8.1 (2003-12-25) [i686-linux]
ruby 1.8.2 (2004-12-25) [i686-linux]
でも同じ結果でした。
■ このスレッドは過去ログ倉庫に格納されています