sacar raiz raices potencia poner para numero funcion cuadradas cuadrada como calcular python math

raices - raiz cuadrada en python numpy



Precisión arbitraria de raíces cuadradas. (4)

¿Cómo puedo obtener los primeros m dígitos correctos en la expansión decimal de sqrt (n) en Python?

Una forma es calcular la raíz cuadrada entera del número multiplicado por la potencia requerida de 10. Por ejemplo, para ver los primeros 20 lugares decimales de sqrt(2) , puede hacer:

>>> from gmpy2 import isqrt >>> num = 2 >>> prec = 20 >>> isqrt(num * 10**(2*prec))) mpz(141421356237309504880)

La función isqrt es bastante fácil de implementar utilizando el algoritmo proporcionado en la página de Wikipedia.

Me decepcionó bastante cuando el decimal.Decimal(math.sqrt(2)) dio como resultado

Decimal(''1.4142135623730951454746218587388284504413604736328125'')

y los dígitos después del décimo quinto lugar decimal salieron mal. (¡A pesar de darte alegremente mucho más de 15 dígitos!)

¿Cómo puedo obtener los primeros m dígitos correctos en la expansión decimal de sqrt(n) en Python?



Puedes probar bigfloat . Ejemplo de la página del proyecto:

from bigfloat import * sqrt(2, precision(100)) # compute sqrt(2) with 100 bits of precision


Utilice el método sqrt en decimal

>>> from decimal import * >>> getcontext().prec = 100 >>> Decimal(2).sqrt() Decimal(''1.414213562373095048801688724209698078569671875376948073176679737990732478462107038850387534327641573'') >>>