Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.75 KB | None | 0 0
  1. import numpy
  2. import math
  3. import multiprocessing
  4. import random
  5.  
  6. def calculate_primes(n):
  7. crivo = numpy.ones(int(n/2), dtype=numpy.bool)
  8. limit = int(math.sqrt(n)) + 1
  9.  
  10. for i in range(3, limit, 2):
  11. if crivo[int(i/2)]:
  12. crivo[int(i*i/2) :: i] = False
  13.  
  14. prime_indexes = numpy.nonzero(crivo)[0][1::]
  15. primes = 2 * prime_indexes.astype(numpy.int32) + 1
  16. return primes
  17.  
  18. def check_prime(num):
  19. if num in range(3):
  20. return (num, True)
  21. elif num in calculate_primes(num+1):
  22. return (num, True)
  23. else:
  24. return (num, False)
  25.  
  26. # Multiprocessing for identifying prime in list of numbers
  27.  
  28. pool = multiprocessing.Pool()
  29.  
  30. result = pool.map(check_prime, [random.randint(1, 3000) for i in range(200)])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement