Prime Number - codepath/compsci_guides GitHub Wiki
Unit 4 Session 1 (Click for link to problem statements)
U-nderstand
Understand what the interviewer is asking for by using test cases and questions about the problem.
- What happens if n is negative?
- Since by definition, prime numbers are positive numbers greater than 1, your function should return False for any n <= 1
P-lan
Plan the solution with appropriate visualizations and pseudocode.
General Idea: Check if n is less than 2, then test for factors from 2 up to the square root of n.
1) If n is less than or equal to 1, return False (not a prime).
2) Use a loop to check divisibility from 2 up to the square root of n:
a) If n is divisible by any number in this range, it's not a prime, return False.
b) If no divisors are found, it's a prime, return True.
⚠️ Common Mistakes
- Forgetting that all non-prime numbers less than 2 should return False.
- Forgetting to check for divisibility by the square root of
n
I-mplement
def is_prime(n):
if n <= 1:
return False
i = 2
while i * i <= n:
if n % i == 0:
return False
i += 1
return True