**モンテカルロ法
- [0,1] x [0,1]の正方形を考えます。
- その中にランダムに点を打つことを考えます。
- 1/4円の内部に入る点と, 全部の点との比率は, π/4 : 1 になるはずなので, n個の点をランダムに打ったときの内部に入る点の数を数えて比の式をつくることで,πの近似値を得ることができるはずです。
**ライブラリの利用
- 乱数を使うライブラリは, 標準的なライブラリではあるものの, 何も宣言しないと使えません。
**例
import random
n = 100
ct = 0
for i in range(0,n):
x = random.random()
y = random.random()
d2 = x*x + y*y
if d2 < 1:
ct=ct+1
print (ct, n, 4*ct/n)
**練習問題
-上のプログラムで, nの値を大きくしてみましょう。
-πに収束していきますか?
-「3.14***」を示すには, 何回以上が必要でしょう。
-円の面積は2次元でした。3次元に拡張するなら, 球の体積を使うことができます。やってみてください。