Skip to content

Commit ebfcd83

Browse files
authored
feat: update sample function implementation (#89)
* test: include more samples for testing * feat: update implementation of `fibonacci_sequence` function
1 parent 73c8386 commit ebfcd83

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

lib/my_fibonacci/sequence.py

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,16 @@
33

44
def fibonacci_sequence(n: int) -> list[int]:
55
"""Generate a Fibonacci sequence up to the given number of terms."""
6-
sequence = [0, 1]
7-
for _ in range(n - 1):
8-
sequence.append(sequence[-1] + sequence[-2])
9-
return sequence[1:]
6+
if n <= 0:
7+
return []
8+
if n == 1:
9+
return [1]
10+
11+
sequence = [1, 1]
12+
for _ in range(n - 2):
13+
sequence.append(sequence[-2] + sequence[-1])
14+
15+
return sequence
1016

1117

1218
__all__ = ["fibonacci_sequence"]

tests/test_sequence.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33

44
def test_fibonacci_sequence() -> None:
5+
assert fibonacci_sequence(-1) == []
6+
assert fibonacci_sequence(0) == []
57
assert fibonacci_sequence(1) == [1]
68
assert fibonacci_sequence(2) == [1, 1]
79
assert fibonacci_sequence(5) == [1, 1, 2, 3, 5]

0 commit comments

Comments
 (0)