Раскрытие силы числа π: изучение различных методов расчета значения числа Пи

В сфере математики немногие константы обладают таким же очарованием и интригой, как π (пи). Это иррациональное число, примерно равное 3,14159, представляет собой отношение длины окружности к ее диаметру. Вычисление значения π было задачей математиков на протяжении всей истории, что привело к разработке множества методов и алгоритмов. В этой статье блога мы окунемся в захватывающий мир числа π и рассмотрим различные методы расчета его значения.

Метод 1: метод Архимеда
Давайте начнем с классического метода, предложенного греческим математиком Архимедом. Он вписал и описал правильный многоугольник внутри и снаружи круга соответственно и вычислил их периметры. Увеличивая число сторон многоугольника, он получил верхнюю и нижнюю границы значения π. Вы можете реализовать этот метод в коде, итеративно вычисляя периметры многоугольников и уточняя границы до тех пор, пока не будет достигнута желаемая точность.

import math
def archimedes_method(iterations):
    sides = 6  # initial number of sides
    perimeter_inscribed = 2
    perimeter_circumscribed = math.sqrt(3) * 2
    for _ in range(iterations):
        sides *= 2
        perimeter_inscribed = 2 * math.sqrt(2 - math.sqrt(4 - perimeter_inscribed2))
        perimeter_circumscribed = 2 * (perimeter_inscribed * math.sqrt(2 + perimeter_circumscribed) / (perimeter_inscribed + perimeter_circumscribed))
    return (perimeter_inscribed + perimeter_circumscribed) / 2
# Usage:
pi_approximation = archimedes_method(10)
print(pi_approximation)

Метод 2: моделирование Монте-Карло
Метод Монте-Карло — это вероятностный метод, который аппроксимирует π с использованием случайной выборки. Создав большое количество точек внутри квадрата и определив соотношение точек, попадающих внутрь четверти круга, вписанной в квадрат, мы можем оценить значение π.

import random
def monte_carlo_pi(iterations):
    points_inside_circle = 0
    total_points = 0
    for _ in range(iterations):
        x = random.uniform(-1, 1)
        y = random.uniform(-1, 1)
        if x2 + y2 <= 1:
            points_inside_circle += 1
        total_points += 1
    return 4 * points_inside_circle / total_points
# Usage:
pi_approximation = monte_carlo_pi(1000000)
print(pi_approximation)

Метод 3: бесконечные ряды
Существует множество бесконечных рядов, сходящихся к значению π. Одной из самых известных является формула Лейбница, в которой для приближения π/4 используются чередующиеся знаки.

def leibniz_formula(iterations):
    result = 0
    for i in range(iterations):
        term = (-1)i / (2 * i + 1)
        result += term
    return 4 * result
# Usage:
pi_approximation = leibniz_formula(1000000)
print(pi_approximation)

Вычисление значения π увлекало математиков на протяжении веков. В этой статье мы исследовали три метода: метод Архимеда, моделирование Монте-Карло и формулу Лейбница. Эти методы демонстрируют разнообразные подходы, используемые для аппроксимации числа π, демонстрируя богатство и красоту математики. Независимо от того, являетесь ли вы математиком, программистом или просто человеком, интересующимся чудесами Вселенной, поиск числа π открывает бесконечные возможности для исследований.