Pi day 🥧
It’s pi day, so I wanted to celebrate with a python one-liner I wrote that approximates pi:
from random import random as r
print("pi~=", sum([(r()-0.5)**2+(r()-0.5)**2<0.5**2 for n in range(int(1e6))])/(1e6*0.5**2))
pi~= 3.14155052
Yes, I can hear you already, it’s technically two lines, but I needed a random number generator. At least I didn’t use the math
module 🙄
This code is obfuscated on purpose. If you want to find out how the algorithm works in detail, and how to implement it in a much cleaner way, check out this colab:
Comments