This script was written for an article I wrote about computing Pi with Python. For more information How to Compute Pi in Python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import sys
import math
def main(argv):
if len(argv) != 1:
sys.exit('Usage: calc_pi.py <n>')
print '\nComputing Pi v.01\n'
a = 1.0
b = 1.0/math.sqrt(2)
t = 1.0/4.0
p = 1.0
for i in range(int(sys.argv[1])):
at = (a+b)/2
bt = math.sqrt(a*b)
tt = t - p*(a-at)**2
pt = 2*p
a = at;b = bt;t = tt;p = pt
my_pi = (a+b)**2/(4*t)
accuracy = 100*(math.pi-my_pi)/my_pi
print "Pi is approximately: " + str(my_pi)
print "Accuracy with math.pi: " + str(accuracy)
if __name__ == "__main__":
main(sys.argv[1:])
|