From d1b7d0eff434eace26e8d869c4f72a67d2b8f734 Mon Sep 17 00:00:00 2001 From: Isabelle Viktoria Maciohsek Date: Sat, 3 Oct 2020 18:03:32 +0300 Subject: [PATCH] Add is_prime --- snippets/is_prime.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 snippets/is_prime.md diff --git a/snippets/is_prime.md b/snippets/is_prime.md new file mode 100644 index 000000000..29f8c3b96 --- /dev/null +++ b/snippets/is_prime.md @@ -0,0 +1,22 @@ +--- +title: is_prime +tags: math,intermediate +--- + +Checks if the provided integer is a prime number. + +- Return `False` if the number is `0`, `1`, a negative number or a multiple of `2`. +- Use `all()` and `range()` to check numbers from `3` to the square root of the given number, returning `True` if none divides the given number, `False` otherwise. + +```py +from math import sqrt + +def is_prime(n): + if n <= 1 or (n % 2 == 0 and n > 2): + return False + return all(n % i for i in range(3, int(sqrt(n)) + 1, 2)) +``` + +```py +is_prime(11) # True +```