Advertisement
Guest User

Untitled

a guest
Feb 21st, 2018
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | None | 0 0
  1. # Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:
  2. #
  3. # Triangle Tn=n(n+1)/2 1, 3, 6, 10, 15, ...
  4. # Pentagonal Pn=n(3nāˆ’1)/2 1, 5, 12, 22, 35, ...
  5. # Hexagonal Hn=n(2nāˆ’1) 1, 6, 15, 28, 45, ...
  6. # It can be verified that T285 = P165 = H143 = 40755.
  7. #
  8. # Find the next triangle number that is also pentagonal and hexagonal.
  9.  
  10.  
  11. from math import sqrt
  12.  
  13.  
  14. def is_pentagonal(n):
  15. k = (1 + sqrt(1 + 24 * n)) / 6
  16. return k == int(k)
  17.  
  18.  
  19. def is_hexagonal(n):
  20. k = (1 + sqrt(1 + 8 * n)) / 4
  21. return k == int(k)
  22.  
  23.  
  24. def triangle(k):
  25. return k * (k + 1) / 2
  26.  
  27.  
  28. k = 286
  29. while True:
  30. n = triangle(k)
  31. if is_pentagonal(n) and is_hexagonal(n):
  32. print(n)
  33. break
  34. k += 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement