Skip to content
Closed
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 2 additions & 17 deletions main.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,3 @@
def nth_fibonacci(n):

# Base case: if n is 0 or 1, return n
if n <= 1:
return n

# Recursive case: sum of the two preceding Fibonacci numbers
return nth_fibonacci(n - 1) + nth_fibonacci(n - 2)

n = 5
result = nth_fibonacci(n)
print(result)


# Function to calculate the nth Fibonacci number using memoization
def nth_fibonacci_util(n, memo):

Expand Down Expand Up @@ -68,6 +54,5 @@ def nth_fibonacci(n):
# Return the nth Fibonacci number
return dp[n]

n = 5
result = nth_fibonacci(n)
print(result)
# Remove lines 57-59 entirely

Comment on lines +61 to +62
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Remove stray review artifact from source.

The line “Remove lines 57-59 entirely” appears to be a leftover review note and should not be in code.

Apply this diff:

-# Remove lines 57-59 entirely
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
# Remove lines 57-59 entirely
🤖 Prompt for AI Agents
In main.py around lines 61-62, remove the stray review artifact line "Remove
lines 57-59 entirely" from the source; delete that exact text so the file
contains only intended code/comments and then save the file (run linter/tests to
confirm no syntax remains).

Comment on lines +61 to +62
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Commented Instruction to Remove Code Remains in Codebase

The comment indicates that lines 57-59 should be removed, but both the comment and the referenced code remain in the codebase. This creates confusion about the intended implementation.

Suggested change
# Remove lines 57-59 entirely
Standards
  • Clean Code Principles

21 changes: 21 additions & 0 deletions test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import unittest
from main import nth_fibonacci

class TestFibonacci(unittest.TestCase):
def test_base_cases(self):
self.assertEqual(nth_fibonacci(0), 0)
self.assertEqual(nth_fibonacci(1), 1)

def test_positive_values(self):
self.assertEqual(nth_fibonacci(2), 1)
self.assertEqual(nth_fibonacci(5), 5)
self.assertEqual(nth_fibonacci(10), 55)

def test_input_validation(self):
with self.assertRaises(TypeError):
nth_fibonacci('5')
with self.assertRaises(ValueError):
nth_fibonacci(-1)

if __name__ == '__main__':
unittest.main()