-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 So I'm using the function below to test a large (617 digit) number for primality. For some reason, when I execute the code, I get an error telling me:
OverflowError: long int too large to convert to float The error is being thrown on this line: for x in range(3, int(n**0.5)+1, 2): The odd thing is that the error is not thrown every single time. I can run the function a few times, it will generate a large number (always the same length) and run it through the function. After I do this a few times, it fails with the error. I might get the error on the next few runs but then, all of a sudden, it functions again. Any ideas? The entire program, including the method, is below. #!/usr/bin/env python from random import getrandbits bits = 2048 # Test if the number is a prime def isprime(n): # make sure n is a positive integer n = abs(int(n)) # 0 and 1 are not primes if n < 2: return False # 2 is the only even prime number if n == 2: return True # all other even numbers are not primes if not n & 1: return False # range starts with 3 and only needs to go up the squareroot of n # for all odd numbers for x in range(3, int(n**0.5)+1, 2): if n % x == 0: return False return True a = getrandbits(bits) print "\nGenerated Number: ", a, "\n" print "Number of digits: ", len(str(a)) isNumberPrime = isprime(a) if isNumberPrime == True: print "\nThis number is a prime.\n" else: print "\nThis number is not a prime.\n" Thanks! Anthony - -- Anthony Papillion Phone: 1.918.533.9699 SIP: 17772098...@in.callcentric.com XMPP: cypherp...@patts.us www.cajuntechie.org -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJSCiKNAAoJEKCKfnPhYIFFn7gP/A8CHOyTv71J/uVpMVYRcDRp KRwbL9A1gkzUpycQibN3Q90FwY6nsGGPCeOkZByfYZnMKQH0o4Kd7QQf0hEOkhzO BLiQjbkjzuUq7usE5TIqjTi0pJ6J7DcRm6U77yhAWrVt60MpfOucojLzX8ZolTD6 7Ha1gJ+9uEcwjosx1ynjVt7MQ/uGZwM7xS6WNfOpOwIYnoT5zBUzlKbw1HqSGYLu 6cWmAFTnnnXv6qymbGTxdZf0dxciODXy5xIMp5CzG6zIeHIOvjG03AbcY/+nI5FI b9fKqjbblE/Npnh9GPXOLpI+I05VZMoO1b0AJSlU+Iq1liZAZOA4s2kf7XCrSb7Y 8Zn6qMPMTuNBPZpRJykTJSrA8s+4RxA0BWoq9rnTNXJPVR6imt6USOtwY4UssPxw HIUrbSmfAEF9+/g08mcKHTVFstMyQCuAbUGx+LxoxkySnwZkfcwTRQ2vuoBDd7XP 92IJlkAdwepEa748P6NHNkSN4+OV3zAeTczHkzD0OL2KAeCuPY5tlqsI0MAngKOu TIZrG+w1rvkz1gU3TBILLySuQTk/ioHNoVAH46bvp6ARRJiHJ4Ub61NoyooMCOgX Lg+XtmcYz9VdUzdayg5uwNQAb/2/DboAyvmuuRDrA2Lzndv1JO3ye222/WCI9e7V aB1ghvNnNMtrOWA0ZVQX =BZUP -----END PGP SIGNATURE----- -- http://mail.python.org/mailman/listinfo/python-list