Я перепробовал множество алгоритмов для нахождения π с помощью Монте-Карло.
Одно из решений (в Python):
def calc_PI():
n_points = 1000000
hits = 0
for i in range(1, n_points):
x, y = uniform(0.0, 1.0), uniform(0.0, 1.0)
if (x**2 + y**2) <= 1.0:
hits += 1
print "Calc2: PI result", 4.0 * float(hits) / n_points
Печально то, что даже с 1000000000 точность ОЧЕНЬ плоха ( 3.141 ... ).
Это максимальная точность, которую может предложить этот метод?
Причина, по которой я выбрал Монте-Карло, заключалась в том, что разбить его на параллельные части очень легко.
Существует ли другой алгоритм для π, который легко разбить на части и рассчитать?