math.nextafter

Nombre completo
math.nextafter
Librería
math
Sintaxis

math.nextafter(x, y)

Descripción

La función math.nextafter devuelve el valor real más próximo al número x en la dirección del número y. Es decir, esta función devuelve el resultado de añadir al argumento x el menor incremento posible en Python hacia el número y.

Si x es igual a y, la función devuelve x.

Resultado

El resultado de la función math.nextafter es un número real.

Ejemplos

El resultado de añadir al número 3.4 el menor incremento posible en Python de forma que el resultado sea un valor más próximo a 8 es:

math.nextafter(3.4, 8)

3.4000000000000004

Es posible confirmar que éste es el número más próximo a 3.4 representable en Python. Por ejemplo, el número 3.4000000000000003 se redondea al resultado obtenido:

print(3.4000000000000003)

3.4000000000000004

Si queremos obtener el número real más próximo a uno dado hacia el infinito positivo, podemos conseguirlo con el siguiente código:

math.nextafter(3.4, math.inf)

3.4000000000000004

Si deseamos que el resultado se acerque al infinito negativo:

math.nextafter(3.4, -math.inf)

3.3999999999999995

En estos ejemplos obtenemos el número real más próximo a uno dado hacia el cero:

math.nextafter(3.4, 0)

3.3999999999999995

math.nextafter(-3.4, 0)

-3.3999999999999995

En este otro ejemplo obtenemos el número real más próximo a uno dado alejándonos del cero con independencia del signo del número real del que partimos. Para ello copiamos el signo del número al valor infinito representado por math.inf con la función math.copysign:

a = 3.4
math.nextafter(a, math.copysign(math.inf, a))

3.4000000000000004

a = -3.4
math.nextafter(a, math.copysign(math.inf, a))

-3.4000000000000004

Enviado por admin el Dom, 24/01/2021 - 11:03