Guest User

Untitled

a guest
Mar 21st, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.43 KB | None | 0 0
  1. require 'prime'
  2.  
  3. cnt = 1
  4. while true do
  5. tnum = (cnt * (cnt + 1)) / 2 # calculate the triangle number : n(n+1) / 2
  6. factors = tnum.prime_division # [[prime1, cnt], [prime2, cnt]]
  7. dividor_cnt = 1
  8. factors.each do |n| # { tnum = a^p * b^q * c^r } =>
  9. dividor_cnt *= n[1] + 1 # dividors count : (p+1)(q+1)(r+1)
  10. end
  11. if dividor_cnt < 500 then
  12. cnt += 1
  13. else
  14. break
  15. end
  16. end
  17. p tnum
Add Comment
Please, Sign In to add comment