用面积法求pi的值:
pi = 4 * ratio( area_of_round / area_of_square
# determine pi
import random
point_num_round = 0
point_num_square = 0
# count the point number of each figure
for i in range(1001 * 1001): # 相当于创建了一个1001 * 1001的坐标系
row = random.randint(0, 1001)
column = random.randint(0, 1001)
if pow(row-500, 2) + pow(column - 500, 2) <= 500 * 500:
point_num_round += 1
point_num_square += 1
# count the point number of each figure
pi = 4 * point_num_round / point_num_square
print("estimate pi is about {}".format(pi))
割圆法:
# the historical problems of dividing the circle into a
# given number of equal segments, and of constructing regular polygons
n = 1000000
import math
pi = n * (math.sin(math.radians(360 / n))) / 2
print(pi)