<p>我真的在努力提高我的数学/编码/解决问题的能力,通过解决项目中的欧拉问题,我有点困在问题三上。问题是“13195的主要因素是5,7,13和29。数字600851475143中最大的素数是多少?”你知道吗</p>
<p>这是我目前的代码</p>
<pre><code>import math
def isPrime(n):
if n > 1:
for i in range(2, n):
if n % i == 0:
return False
else:
return True
else:
return False
def highFactor(m):
factors = []
for i in range(2, int(math.sqrt(m))):
if isPrime(i):
if m % i == 0:
factors.append(i)
print max(factors)
highFactor(13195)
</code></pre>
<p>所以这显然是在测试他们给出的例子,因为我已经知道答案应该是29,但是当我运行代码时,它给了我91。我做错了什么?你知道吗</p>