>原です。
>
>唐突ですが、問題です。
>
>自然数のペアで、3乗の和が等しくなるもののリストを100個あげて
>ください。
>
>たとえば
>
>1729 = 9**3 + 10**3 = 1**3 + 12**3
>4104 = 9**3 + 15**3 = 2**3 + 16**3
>...
>
>という感じです。

ruby 初心者の近岡です。

BASICなら30分もかからずできたのですが…
まだ、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.
let a=1
let cnt=0
do while cnt<100        ! 100組
   let b=1
   do while b<a
      let x=a^3+b^3
      let x3=x^(1/3)
      let s=a+b-6        ! S≡A+B (mod 6)
      do while s>x3
         if mod(s^3-x,3*s)=0 then
            let t=(s^3-x)/(3*s)
            let u=int(sqr(s*s-4*t))
            if s*s-u*u=4*t then
               let cnt=cnt+1
               let c=(s+u)/2
               let d=(s-u)/2
               print cnt;x;"=";a;"**3 +";b;"**3 =";c;"**3 +";d;"**3"
            end if
         end if
         let s=s-6
      loop
      let b=b+1
   loop
   let a=a+1
loop
end
! ==== 引用ここまで ====

0----+----1----+----2----+----3----+----4----+----5----+----6
近岡 宣吉  Chikaoka, Nobuyoshi
富山県立高岡西高等学校(数楽科)
 E-mail : chikaoka-nobuyoshi / tym.ed.jp