descr=%{ Triangle, pentagonal, and hexagonal numbers are generated by the following formulae: Triangle T_(n)=n(n+1)/2 1, 3, 6, 10, 15, ... Pentagonal P_(n)=n(3n−1)/2 1, 5, 12, 22, 35, ... Hexagonal H_(n)=n(2n−1) 1, 6, 15, 28, 45, ... It can be verified that T_(285) = P_(165) = H_(143) = 40755. Find the next triangle number that is also pentagonal and hexagonal. } # number[n]=1,2 or 3 if 3 triangular, pentagonal and hexagonal $number={} def save_and_verif(t) if $number[t].nil? $number[t]=1 else $number[t] += 1 if $number[t] == 3 puts t exit 0 end end end def T(n) t=n*(n+1)/2 save_and_verif(t) end def P(n) t=n*(3*n-1)/2 save_and_verif(t) end def H(n) t=n*(2*n-1) save_and_verif(t) end n=144 while true T(n) P(n) H(n) n+=1 end