python使用三角迭代计算圆周率PI的方法。
方法1(python使用三角迭代计算圆周率PI):
# Calculating PI using trigonometric iterations
# FB36 - 20130825
import math
x = 1.0
y = 1.0
z = 1.0
w = 1.0
v = 1.0
u = 1.0
for i in range(30):
x = math.sin(x) + x
y = math.cos(y) + y
z = math.cos(z) + math.sin(z) + z
w = math.cos(w) - math.sin(w) + w
v = math.cos(v) * math.sin(v) + v
u = math.cos(u) / math.sin(u) + u
print i
print x, y * 2.0, z * 4.0 / 3.0, w * 4.0, v * 2.0, u * 2.0
print
方法2(python使用三角迭代计算圆周率PI):
# Calculating PI using trigonometric iterations
# FB36 - 20130901
import math
def sin2(x):
return ((math.e ** complex(0.0, x) - math.e ** complex(0.0, -x)) / 2.0).imag
def cos2(x):
return ((math.e ** complex(0.0, x) + math.e ** complex(0.0, -x)) / 2.0).real
x = 1.0
y = 1.0
x2 = 1.0
y2 = 1.0
for i in range(5):
x = math.sin(x) + x
y = math.cos(y) + y
x2 = sin2(x2) + x2
y2 = cos2(y2) + y2
print i, x, x2, y * 2.0, y2 * 2.0