原です。

>ruby 初心者の近岡です。
>
>! ==== 引用ここから ====
>! A**3+B**3=C**3+D**3 (C>A>B>D)となる整数の組を100組求める
>! X=A**3+B**3, S=C+D , T=C*D , U=C-D のとき
>! S≡A+B (mod 6) , A+B > S > X^(1/3)
>! T = C*D = (S**3-X)/(3S) is a integer.
>! U = C-D = sqr(S**2-4*T) is a integer.

なるほど、A**3 + B**3 == C**3 + D**3 なら A + B ≡ C + D (mod 6)
を使うわけですね。これはかなりの高速化に繋がりますね。

>BASICなら30分もかからずできたのですが…
>まだ、rubyで作るだけの能力がありません。

不肖、私メが Ruby 化させていただきます。

a=1
cnt=0
while cnt<100
  b=1
  while b<a
    x=a**3+b**3
    x3=x**(1.0/3)
    s=a+b-6        # S≡A+B (mod 6)
    while s>x3
      if (s**3-x).modulo(3*s) == 0 then
        t=(s**3-x)/(3*s)
        u=Integer(Math.sqrt(s*s-4*t))
        if s*s-u*u==4*t then
          cnt=cnt+1
          c=(s+u)/2
          d=(s-u)/2
          print cnt,x,"=",a,"**3 +",b,"**3 =",c,"**3 +",d,"**3","\n"
        end
      end
      s=s-6
    end
    b=b+1
  end
  a=a+1
end

#1.0/3 を 1/3 と書いてはまったのは内緒。

やはりかなり速い。