MCPcopy Create free account
hub / github.com/TheAlgorithms/Python / hexagonal_numbers

Function hexagonal_numbers

maths/series/hexagonal_numbers.py:18–37  ·  view source on GitHub ↗

:param len: max number of elements :type len: int :return: Hexagonal numbers as a list Tests: >>> hexagonal_numbers(10) [0, 1, 6, 15, 28, 45, 66, 91, 120, 153] >>> hexagonal_numbers(5) [0, 1, 6, 15, 28] >>> hexagonal_numbers(0) Traceback (most rec

(length: int)

Source from the content-addressed store, hash-verified

16
17
18def hexagonal_numbers(length: int) -> list[int]:
19 """
20 :param len: max number of elements
21 :type len: int
22 :return: Hexagonal numbers as a list
23
24 Tests:
25 >>> hexagonal_numbers(10)
26 [0, 1, 6, 15, 28, 45, 66, 91, 120, 153]
27 >>> hexagonal_numbers(5)
28 [0, 1, 6, 15, 28]
29 >>> hexagonal_numbers(0)
30 Traceback (most recent call last):
31 ...
32 ValueError: Length must be a positive integer.
33 """
34
35 if length <= 0 or not isinstance(length, int):
36 raise ValueError("Length must be a positive integer.")
37 return [n * (2 * n - 1) for n in range(length)]
38
39
40if __name__ == "__main__":

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected