Найти в Дзене
SergSergius

Вычисление числа π в Python

Число π (пи) - одна из самых известных математических констант. В этой статье мы рассмотрим несколько способов вычисления числа π с использованием Python, начиная от простых методов и заканчивая более сложными алгоритмами. 1. Использование встроенной константы Python предоставляет константу π в модуле math: import math pi = math.pi print(f"Значение π: {pi}") Этот метод дает значение π с точностью до 15 знаков после запятой. 2. Метод Монте-Карло Метод Монте-Карло основан на вероятностном подходе: import random
def monte_carlo_pi(n):
inside_circle = 0
total_points = n
for _ in range(total_points):
x = random.uniform(-1, 1)
y = random.uniform(-1, 1)
if x * x + y * y <= 1:
inside_circle += 1
pi = 4 * inside_circle / total_points
return pi
print(f"Приближенное значение π: {monte_carlo_pi(1000000)}") Точность этого метода увеличивается с увеличением количества точек. 3. Ряд Лейбница Ряд Лейбница - это бесконечный ряд, сумма которо

Число π (пи) - одна из самых известных математических констант. В этой статье мы рассмотрим несколько способов вычисления числа π с использованием Python, начиная от простых методов и заканчивая более сложными алгоритмами.

1. Использование встроенной константы

Python предоставляет константу π в модуле math:

import math

pi = math.pi

print(f"Значение π: {pi}")

Этот метод дает значение π с точностью до 15 знаков после запятой.

2. Метод Монте-Карло

Метод Монте-Карло основан на вероятностном подходе:

import random


def monte_carlo_pi(n):
inside_circle = 0
total_points = n

for _ in range(total_points):
x = random.uniform(-1, 1)
y = random.uniform(-1, 1)
if x * x + y * y <= 1:
inside_circle += 1

pi = 4 * inside_circle / total_points
return pi


print(f"Приближенное значение π: {monte_carlo_pi(1000000)}")

Точность этого метода увеличивается с увеличением количества точек.

3. Ряд Лейбница

Ряд Лейбница - это бесконечный ряд, сумма которого стремится к π/4:

def leibniz_pi(n):
pi = 0
for i in range(n):
pi += (-1)**i / (2*i + 1)
return 4 * pi

print(f"Приближенное значение π: {leibniz_pi(1000000)}")

Этот метод сходится медленно, но прост в реализации.

4. Формула Чудновского

Формула Чудновского обеспечивает быструю сходимость:

from decimal import Decimal, getcontext

def chudnovsky_pi(precision):
getcontext().prec = precision
C = 426880 * Decimal(10005).sqrt()
L = 13591409
X = 1
M = 1
K = 6
S = L
for i in range(1, precision):
M = M * (K ** 3 - 16 * K) // (i ** 3)
L += 545140134
X *= -262537412640768000
S += Decimal(M * L) / X
K += 12
pi = C / S
return pi

print(f"Значение π с высокой точностью: {chudnovsky_pi(100)}")

Этот метод позволяет вычислить π с очень высокой точностью.

Python предоставляет различные способы вычисления числа π, от простых до сложных. Выбор метода зависит от требуемой точности и вычислительных ресурсов. Для большинства практических применений достаточно использовать встроенную константу math.pi, но реализация собственных алгоритмов может быть полезной для образовательных целей или при необходимости высокой точности вычислений.