From: Yukihiro Matsumoto Date: 2008-04-01T20:22:26+09:00 Subject: [ruby-dev:34202] Re: [ruby-cvs:23106] Re: Ruby:r15866 (trunk): * numeric.c (num_quo): should convert its operand to Rational. まつもと ゆきひろです In message "Re: [ruby-dev:34201] Re: [ruby-cvs:23106] Re: Ruby:r15866 (trunk): * numeric.c (num_quo): should convert its operand to Rational." on Tue, 1 Apr 2008 20:11:15 +0900, Tadayoshi Funaba writes: |よく考えると、rb_Rational をつかうのがおかしいですね。 | |(1<<32).quo('1') #=> Rational(4294967296, 1) |(1<<32).div('1') # TypeError: String can't be coerced into Bignum |1.quo('1') # NoMethodError: super: no superclass method `coerce' for "1":String そうか。そこは直します。FloatをRationalに直す(かつ他では TypeErrorになる)方法ってありましたっけ。