From 6af7cea6a0a2e4665af8dbc08ef67453c85adad8 Mon Sep 17 00:00:00 2001 From: steven-y-e Date: Wed, 2 Aug 2023 12:16:58 -0400 Subject: [PATCH] feat(solution): problem #35 --- solutions/035/circularprimes.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 solutions/035/circularprimes.py diff --git a/solutions/035/circularprimes.py b/solutions/035/circularprimes.py new file mode 100644 index 0000000..b16b79a --- /dev/null +++ b/solutions/035/circularprimes.py @@ -0,0 +1,30 @@ +import math + +def is_prime(n): + for i in range(2, math.floor(math.sqrt(n) + 1)): + if n % i == 0: + return False + return True + +def rotate_string(toBeRotated,n): + firstHalf = toBeRotated[0:n] + secondHalf = toBeRotated[n:] + return secondHalf + firstHalf + +def is_circular_prime(n): + if is_prime(n): + for i in range(1, len(str(n))): + if not is_prime(int(rotate_string(str(n),i))): + return False + return True + else: + return False + +limit = 1000000 +circularPrimeList = [] + +for i in range(2, limit): + if is_circular_prime(i): + circularPrimeList.append(i) + +print("The number of circular primes below " + str(limit) + " is: " + str(len(circularPrimeList))) \ No newline at end of file