擅长:python、mysql、java
<p><code>random()</code>为您提供一个介于0和1之间的随机浮点。在</p>
<p><code>random()*2 -1</code>给你一个介于-1和+1之间的随机浮动。在</p>
<p>正如通常所解释的那样,这个算法是根据单位平方中单位圆中的点的比例来计算的,这是经过片刻思考后显而易见的,第二种方法直接给出了这个结果。在</p>
<p>不需要太多的思考就可以看出,只使用单位平方和单位圆的右上象限仍然会给你<code>pi/4</code>(尽管有可能会混淆自己并弄错,就像我在这个答案的第一个版本中所做的那样)。但这并不是那么明显。这可能是一个很好的理由,让一个教程不要这样做。在</p>
<p>如果您对尽可能高效地计算<code>pi</code>感兴趣,那么使用<code>random()</code>可能更有意义,并添加一条注释,说明您如何将单位平方和单位圆都除以相同的值,这样几率仍然是<code>pi/4</code>。但是如果你有兴趣向新手程序员展示如何设计和实现随机算法呢?也许最好还是照原样写吧。在</p>