Cómo calcular pi usando Python (ejemplo de código)
1. Introducción a π
Introducción a π
Pi está representado por la letra griega π (pronunciada pài), que es una constante (aproximadamente igual a 3.141592654). Representa la relación entre la circunferencia y el diámetro. Es un decimal recurrente infinito. En la vida diaria, pi suele expresarse como 3,14 para cálculos aproximados.
El proceso de solución de π
En 1965, el matemático británico John Wallis publicó una monografía matemática en la que derivó una fórmula y encontró que pi es igual a un producto de fracción infinita.
En 2015, científicos de la Universidad de Rochester descubrieron una fórmula con la misma circunferencia en cálculos de mecánica cuántica de los niveles de energía de los átomos de hidrógeno.
El 4 de marzo de 2019, Google anunció que pi había alcanzado los 31,4 billones de dígitos después del punto decimal.
Aquí lo solucionamos con una fórmula que sienta “bien”. La razón por la que es bueno es que los resultados del cálculo son relativamente precisos, pero el proceso de cálculo lleva mucho tiempo. Aprendamos juntos ~ ~
2. Cálculo aproximado de π
Fórmula de cálculo
2. Explicación del método
Fórmula utilizada. el numerador en el lado derecho de la ecuación es 1 y el denominador es la secuencia creciente. A partir del primer término, los términos impares son positivos y los pares son negativos. Cuanto mayor y menor sea el denominador en el lado derecho de la ecuación, más preciso será el valor calculado de pi; en otras palabras, cuantos más términos haya en el lado derecho de la ecuación, más preciso será el valor calculado;
3. Implementación de código (python)
Importar fabs desde matemáticas #Importar módulo de matemáticas
Importar perf_counter desde tiempo #Importar módulo de tiempo
Columna de definición (i): #Columna de texto dinámico
N = potencia (10, nivel)
a = int((i/N)*50)
b = 50 - a
y, N = '*' * a, '.'* b
Imprimir("
Calculando: {: 3.0f } %[{ }-& gt;{}] {:.2f}s "
. Formato (2*a, Y, N, perf_counter()), end="" )
Nivel = eval(input('Calcular pi con varios decimales:'))
Imprimir('
{:= 70}'. Formato (" Inicio del cálculo"))
a, b, pi, tmp = 1, 1, 0, 1
i = 0
'''
Numerador|Denominador|πππ
Tmp almacena el valor de a/b | i progreso de ejecución
'''
Perf_counter() #Start momento.
while (fabs(tmp)>= pow(10,-level)): #Calcular Pi
pi += tmp
b += 2
a = -a
tmp = a/b
i += 2
Bar(i) #Llamar a la función para mostrar el cálculo en horario en tiempo real.
Imprimir('
{:= 70}'.Format('Cálculo completado'))
Imprimir('
Pi El valor calculado es: {} '. Formato (redondo (pi * 4, nivel)) #Salida del resultado del cálculo 4.
Como se puede ver en las tres imágenes anteriores, tiene una precisión de cuatro decimales. lugares Solo se necesitan 14,07 segundos para tener una precisión de seis decimales y se necesitan 850/8% = 10625 segundos para tener una precisión de ocho decimales. Este método es bueno, pero aún lleva mucho tiempo calcular. p>
ππ es una existencia maravillosa y hermosa.
Es un decimal infinito no recurrente, como una especie de belleza defectuosa, ¡siempre que tengas ojos para descubrir la belleza!
En 2011, la Asociación Internacional de Matemáticas anunció oficialmente que el 14 de marzo de cada año será designado como el Día Internacional de las Matemáticas. La fuente es el pi del antiguo matemático chino Zu Chongzhi.