diff options
Diffstat (limited to '10001prime.py')
-rw-r--r-- | 10001prime.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/10001prime.py b/10001prime.py new file mode 100644 index 0000000..ecf8139 --- /dev/null +++ b/10001prime.py @@ -0,0 +1,31 @@ +import PIL, math +import numpy as np + +#Problem 7 - 10,001st prime + +#returns a list of every prime up to a certain number +def listprimes(number): + primes = [] + if (number <=1): + return [1] + a = np.ones(number) + a[0]=0 + a[1]=0#1 and 0 are not prime + ##Sieve of eratosthenes + for i in range(2,int(math.ceil(math.sqrt(number)))): + if(a[i]==1): + j = i**2 #cross out all the multiples of i, starting with its square + while(j < number): + a[j] = 0 + j+=i + + for k in range(2, number): + #is prime + if(a[k]==1): + primes.append(k) + return primes + +out_list = listprimes(1000000) +print out_list +#return 10,001th prime factor +print out_list[10000] |