Skip to content

Instantly share code, notes, and snippets.

@kylemsguy
Last active November 19, 2020 20:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kylemsguy/98bf4fca1b0089efd8eef723b2ccbd7a to your computer and use it in GitHub Desktop.
Save kylemsguy/98bf4fca1b0089efd8eef723b2ccbd7a to your computer and use it in GitHub Desktop.
Comparision of various prime-finding functions
import time
import math
def prime_number(pnum):
primes = [2]
number = 1
while len(primes) < pnum:
is_prime = True
number += 2
for num in primes:
if num > math.sqrt(number):
break
if number % num == 0:
is_prime = False
break
if is_prime:
primes.append(number)
return primes[-1]
def primeNumber_panda(pnum):
Primes = [2]
number = 2
while len(Primes) < pnum:
Prime = True
number += 1
for num in range(2,number):
if number % num == 0:
Prime = False
break
if Prime:
Primes.append(number)
return Primes[-1]
def prime_number_tralph(pnum):
number = 1
primes_found = 0
last_prime = -1
done = False
while primes_found < pnum:
for i in range(2, number + 1):
result = number % i
if result == 0 and i != number:
break
elif result == 0 and i == number:
# print(number)
last_prime = i
primes_found += 1
break
number += 1
return last_prime
if __name__ == "__main__":
start_time = time.time()
print(primeNumber_panda(10000))
print(f"Execution time (panda): {time.time() - start_time}")
start_time = time.time()
print(prime_number(10000))
print(f"Execution time (prime_number): {time.time() - start_time}")
start_time = time.time()
print(prime_number_tralph(10000))
print(f"Execution time (tralph): {time.time() - start_time}")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment