田中@ISASです。

In message: <<[ruby-math:00133] Re: %  &  divmod() & remainder()>>
>>> "Shigeo Kobayashi" <shigeo / tinyforest.gr.jp> wrote:

> > Cの fmod と remainder とは違うんですね、しくしく。
> ええっ!!
> でも、numeric.c の flo_remainder(x, y) は基本的に fmod(x,y)
> なのですが?

あ、舌足らずでごめんなさい。
  Rubyの% ≠ Cのfmod 
  Rubyのremainder ≠ Cのremainder
というように、RubyとCが対応していない、という意味です。
# 私はてっきりCと同じだと思っていました。

Ruby の remainderは C の fmodと同じなので、
  a.remainder(b) ≡ a - (a/b).to_i * b
でよいでしょうか?

> ただ、ここで % を使うのが一般的なことなのでしょうか?

えーと、modの定義を % と同じにして、
div*b+mod=a となるように divを定義する、
というのが言いたかったことです。

田中昌宏