CS 220 Parallel Computing

pi-py.py

DownloadView Raw

# File:       pi-py.py
#
# Purpose:    Estimates pi using the Leibniz formula (in Python).
#
# Run:        python pi-py.py <num_iterations>

import sys
import time
import math

def leibniz(n):
    sum = 0
    for i in range(n):
        sum += math.pow(-1, i) / (2 * i + 1);
    return sum

def main():
    n = sys.argv[1]
    n = int(n)
    start = time.time()
    pi = leibniz(n) * 4
    elapsed = time.time() - start
    print("Estimation: {}.".format(pi))
    print("Time: {}.".format(elapsed))

if __name__ == '__main__':
    main()