Guest User

Untitled

a guest
Sep 1st, 2011
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.93 KB | None | 0 0
  1.  
  2. import math
  3.  
  4. def isprime(n):
  5.     """
  6.    determine if n is prime
  7.    """
  8.     for div in range(2, int(math.sqrt(n)+1)):
  9.         if n%div == 0:
  10.             return False
  11.     return True
  12.  
  13. # use a generator
  14. def primes(n = 2):
  15.     """
  16.    generate primes as needed starting at n
  17.    """
  18.     while True:
  19.         if isprime(n):
  20.             yield n
  21.         n += 1
  22.  
  23. def n_primes(n = 1000):
  24.     """
  25.    return a list of n primes
  26.    """
  27.     prime_list = []
  28.     for prime in primes():
  29.         prime_list.append(prime)
  30.         if len(prime_list) == n:
  31.             return prime_list
  32.  
  33. def nth_prime(n = 1000):
  34.     """
  35.    returns the nth prime
  36.    """
  37.     for i, prime in enumerate(primes()):
  38.         if i == n - 1:
  39.             return prime
  40.  
  41. if __name__ == '__main__':
  42.     """
  43.    a = n_primes(1000)
  44.    a[-1] == 7919
  45.    nth_prime(1000) == 7919
  46.    """
  47.     a = n_primes(1000)
  48.     print a[-1]
  49.     print nth_prime(1000)
Advertisement
Add Comment
Please, Sign In to add comment