擅长:python、mysql、java
<p>我所做的更改:</p>
<ol>
<li>更改范围以添加<code>2</code>步骤以更自然地跳过偶数。你知道吗</li>
<li>检查内部循环,需要除以值<code>range(2, i//2)</code>。除以任何大于<code>i//2</code>的值将小于2。你知道吗</li>
<li>改变你的基本检查,看看是否有任何数字在上述范围内除以。如果是这样,我们就知道这个数字是假的。在那一点上我们可以进入下一个数字。你知道吗</li>
<li>我们想在素数计数器为1000时返回,您返回的是第1001个素数。你知道吗</li>
</ol>
<pre class="lang-py prettyprint-override"><code>def calculate_thousandth_prime():
prime_counter = 0
for i in range(3,int(10e6),2):
prime = True
for k in range(2, i//2):
if i % k == 0:
prime = False
break
if prime:
print(str(i) + " is prime")
prime_counter += 1
if prime_counter == 1000:
print("The number "+str(i)+" is the thousandth prime")
break
return i
calculate_thousandth_prime()
</code></pre>