<p>我最近完成了<a href="https://projecteuler.net/" rel="nofollow">Project Euler</a><a href="https://projecteuler.net/problem=3" rel="nofollow">problem, number 3</a>,上面写着:</p>
<blockquote>
<p>The prime factors of 13195 are 5, 7, 13 and 29.</p>
<p>What is the largest prime factor of the number 600851475143 ?</p>
</blockquote>
<p>当我遇到这个问题时,我正在寻找其他人的解决方案。在</p>
<pre><code>n = 600851475143
i = 2
while i * i < n:
while n%i == 0:
n = n / i
i = i + 1
print (n)
</code></pre>
<p>现在,我知道这个程序是可行的,但我不知道为什么它会起作用。有人能给我解释一下吗?在</p>