# Problem Set 1
# Name: Adnan Chowdhury
# Collaborators: None
# Time: 2:00
def is_prime(integ): #Checks if an integer is a prime number
x = 2
checker = 0
while x < integ:
remainder = integ%x
if remainder == 0:
#number is not a prime
checker += 1
return False
else:
x += 1
if checker == 0:
return integ
prime = [2,] #A list of which further prime numbers will be appended to
odd_value = 3
while len(prime) != 1000:
if is_prime(odd_value) == False:
odd_value = odd_value + 2 #Will generate odd numbers
else:
prime.append(odd_value) #Will append prime integer to list.
odd_value += 2
print prime[999] #Prints the 1000th prime number
IyBQcm9ibGVtIFNldCAxCiMgTmFtZTogQWRuYW4gQ2hvd2RodXJ5CiMgQ29sbGFib3JhdG9yczogTm9uZQojIFRpbWU6IDI6MDAKCgkKZGVmIGlzX3ByaW1lKGludGVnKToJCSNDaGVja3MgaWYgYW4gaW50ZWdlciBpcyBhIHByaW1lIG51bWJlcgoJeCA9IDIKCWNoZWNrZXIgPSAwCgl3aGlsZSB4IDwgaW50ZWc6CgkJcmVtYWluZGVyID0gaW50ZWcleAoJCWlmIHJlbWFpbmRlciA9PSAwOgoJCQkjbnVtYmVyIGlzIG5vdCBhIHByaW1lCgkJCWNoZWNrZXIgKz0gMQoJCQlyZXR1cm4gRmFsc2UKCQkJCgkJZWxzZToKCQkJeCArPSAxCglpZiBjaGVja2VyID09IDA6CgkJcmV0dXJuIGludGVnCgpwcmltZSA9IFsyLF0JCQkjQSBsaXN0IG9mIHdoaWNoIGZ1cnRoZXIgcHJpbWUgbnVtYmVycyB3aWxsIGJlIGFwcGVuZGVkIHRvCgoKb2RkX3ZhbHVlID0gMwkJCQp3aGlsZSBsZW4ocHJpbWUpICE9IDEwMDA6CglpZiBpc19wcmltZShvZGRfdmFsdWUpID09IEZhbHNlOiAJCgkJb2RkX3ZhbHVlID0gb2RkX3ZhbHVlICsgMgkJCSNXaWxsIGdlbmVyYXRlIG9kZCBudW1iZXJzCgllbHNlOgoJCXByaW1lLmFwcGVuZChvZGRfdmFsdWUpCQkJCSNXaWxsIGFwcGVuZCBwcmltZSBpbnRlZ2VyIHRvIGxpc3QuCgkJb2RkX3ZhbHVlICs9IDIKCnByaW50IHByaW1lWzk5OV0JCQkJCQkJI1ByaW50cyB0aGUgMTAwMHRoIHByaW1lIG51bWJlcgoK