import math
def isPrime ( primeList, candidate) :
prime = True
i = 0
upperLimit = math .sqrt ( j)
while primeList[ i] <= upperLimit and prime:
if candidate % primeList[ i] == 0 :
prime = False
i += 1
return prime
def primeList( listLength) :
if listLength < 1 :
return [ ]
primeList = [ 2 ]
candidate = 3
while listLength > len ( primeList) :
candidate += 2
if isPrime( primeList, candidate) :
primeList.append ( candidate)
return primeList
primeList( 10000 )
aW1wb3J0IG1hdGgKCmRlZiBpc1ByaW1lIChwcmltZUxpc3QsIGNhbmRpZGF0ZSk6CiAgICBwcmltZSA9IFRydWUKICAgIGkgPSAwCiAgICB1cHBlckxpbWl0ID0gbWF0aC5zcXJ0KGopCiAgICB3aGlsZSBwcmltZUxpc3RbaV0gPD0gdXBwZXJMaW1pdCBhbmQgcHJpbWU6CiAgICAgICAgaWYgY2FuZGlkYXRlICUgcHJpbWVMaXN0W2ldID09IDA6CiAgICAgICAgICAgICBwcmltZSA9IEZhbHNlCiAgICAgICAgaSArPTEKICAgIHJldHVybiBwcmltZQoKZGVmIHByaW1lTGlzdChsaXN0TGVuZ3RoKToKICAgIGlmIGxpc3RMZW5ndGggPCAxIDoKICAgICAgICByZXR1cm4gW10KICAgIHByaW1lTGlzdCA9IFsyXQoKICAgIGNhbmRpZGF0ZSA9IDMKICAgIHdoaWxlIGxpc3RMZW5ndGggPiBsZW4ocHJpbWVMaXN0KToKICAgICAgICBjYW5kaWRhdGUgKz0yCiAgICAgICAgaWYgaXNQcmltZShwcmltZUxpc3QsIGNhbmRpZGF0ZSk6CiAgICAgICAgICAgIHByaW1lTGlzdC5hcHBlbmQoY2FuZGlkYXRlKQoKICAgIHJldHVybiBwcmltZUxpc3QKICAgIApwcmltZUxpc3QoMTAwMDAp
stdout
stderr
Traceback (most recent call last):
File "prog.py", line 26, in <module>
primeList(10000)
File "prog.py", line 21, in primeList
if isPrime(primeList, candidate):
File "prog.py", line 6, in isPrime
upperLimit = math.sqrt(j)
NameError: global name 'j' is not defined