モンテカルロ法

モンテカルロ法で円周率πを求める。
このページとかが参考になる。
http://www.f.waseda.jp/takezawa/math/number/Pi/monte.html

#!usr/bin/env python
# -*- coding: utf-8 -*-

#montecarlo.py

import sys
import random

N=raw_input("input trial number : ")
a= 0
for x in range(int(N)):
    x = random.random()
    y = random.random()
    if pow(x,2)+pow(y,2) <= 1:
        a+=1
pi = float(4)*a / int(N)
print "PI = ", pi

10万回の試行で3.14まで出てきた。

pythonの割り算の結果が整数にならないようにするには、
割る数or割られる数にfloatを指定するか、1.0をかけておく。