in checkPrime what do you return when "x" is less than 2?
On Sep 12, 2009, at 8:46 AM, Someone Something wrote:
But, I'm returning true or false right?
On Sat, Sep 12, 2009 at 11:32 AM, MRAB <pyt...@mrabarnett.plus.com>
wrote:
Someone Something wrote:
Project euler (in case you don't know: projecteuler.net <http://projecteuler.net
>)
I'm trying to do the third one and here's my current code:
1 def checkPrime (x):
2 factors=2;
3 while factors<=x:
4 if x==factors:
5 return True;
6 elif x%factors==0:
7 return False;
8 elif x%factors!=0:
9 factors=factors+1;
You're not returning 'factors', so the function will return None.
10
11 factorl=[];
12 factors=600851475142;
13
14 while factors != 1:
15 if 600851475143%factors==0:
16 if checkPrime(factors)==True:
17 print factors;
18 else:
19 factors=factors-1;
20
21 else:
22 factors=factors-1;
23
And it just gets frozen when I run it. I put a
print "Loop completed"
in one of the loops and it showed up just fine. So, there are two
possibilities:
1. Its looping in the trillions and taking a while
2. I have a forever loop somewhere
--
http://mail.python.org/mailman/listinfo/python-list
--
http://mail.python.org/mailman/listinfo/python-list
-------------------------------------------------
I check email roughly 2 to 3 times per business day.
Kagi main office: +1 (510) 550-1336
--
http://mail.python.org/mailman/listinfo/python-list