Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:
- #
- # Triangle Tn=n(n+1)/2 1, 3, 6, 10, 15, ...
- # Pentagonal Pn=n(3nā1)/2 1, 5, 12, 22, 35, ...
- # Hexagonal Hn=n(2nā1) 1, 6, 15, 28, 45, ...
- # It can be verified that T285 = P165 = H143 = 40755.
- #
- # Find the next triangle number that is also pentagonal and hexagonal.
- from math import sqrt
- def is_pentagonal(n):
- k = (1 + sqrt(1 + 24 * n)) / 6
- return k == int(k)
- def is_hexagonal(n):
- k = (1 + sqrt(1 + 8 * n)) / 4
- return k == int(k)
- def triangle(k):
- return k * (k + 1) / 2
- k = 286
- while True:
- n = triangle(k)
- if is_pentagonal(n) and is_hexagonal(n):
- print(n)
- break
- k += 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement