Skip to content

Instantly share code, notes, and snippets.

@meub
Forked from louismullie/pi-monte-carlo.py
Created March 14, 2019 18:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save meub/ce0e33242154c8a61acb15eb27aecdc9 to your computer and use it in GitHub Desktop.
Save meub/ce0e33242154c8a61acb15eb27aecdc9 to your computer and use it in GitHub Desktop.
Monte Carlo Estimation of PI in Python
import random as r
import math as m
# Number of darts that land inside.
inside = 0
# Total number of darts to throw.
total = 1000
# Iterate for the number of darts.
for i in range(0, total):
# Generate random x, y in [0, 1].
x2 = r.random()**2
y2 = r.random()**2
# Increment if inside unit circle.
if m.sqrt(x2 + y2) < 1.0:
inside += 1
# inside / total = pi / 4
pi = (float(inside) / total) * 4
# It works!
print(pi)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment