CodeGym /Blog Java /Random-ES /Método Math.exp() en Java
Autor
Alex Vypirailenko
Java Developer at Toshiba Global Commerce Solutions

Método Math.exp() en Java

Publicado en el grupo Random-ES
La clase Math contiene métodos para trabajar con funciones matemáticas. En este artículo, vamos a hablar sobre el método Math.exp() en Java. Devuelve el número e elevado a la potencia de un valor doble.

Qué es una función exponencial: una introducción matemática muy breve

Nota: Esta sección explica las matemáticas detrás del método Math.exp() . Si ya sabe esto, o simplemente quiere usar el método sin comprender la esencia, siéntase libre de pasar al siguiente punto. El exponente es la función y = e x , donde e es un número matemático complicado que es aproximadamente 2.718281828459045. Este número es tan importante como el famoso número pi, pero es conocido principalmente por matemáticos, programadores y personas que trabajan con estadísticas. Por cierto, tiene un nombre: número de Euler. También e es la base del logaritmo natural. Aquí está el gráfico de la función exponencial: Método Math.exp() en Java - 1Los procesos que obedecen la ley exponencial tienen una propiedad común: para el mismo intervalo de tiempo, sus parámetros cambian el mismo número de veces. Por ejemplo, el enfriamiento de un líquido: cuanto mayor es la diferencia de temperatura entre el aire y el líquido, más rápido se enfría. Cuanto más grande se vuelve la bola de nieve que rueda por la montaña, más rápido rueda hacia abajo.

Método Math.exp() en Java

Ahora volvamos a Java. El método double exp(doble x) de la clase Math calcula el valor de la función exponente en el punto x , en otras palabras, devuelve el número e elevado a x . Más precisamente, devuelve un valor aproximado con cierta precisión. Devuelve el número de Euler e elevado a la potencia de un valor doble. Es decir, Math.exp(2.0) = e 2.0 (aproximadamente es 7.34) Aquí hay una declaración del método:

double exp(double x)
Donde x es el grado para elevar el número e . Demos un ejemplo.

public class ExpExample {
   public static void main(String[] args) {
       int x1 = 2;
       double x2 = 0.5;
       double x3 = 1;
       System.out.println("exponential function in  " + x1 + " = " + Math.exp(x1));
       System.out.println("exponential function in  " + x2 + " = " + Math.exp(x2));
       System.out.println("exponential function in  " + x3 + " = " + Math.exp(x3));
   }
}
La salida es:
función exponencial en 2 = 7,38905609893065 función exponencial en 0,5 = 1,6487212707001282 función exponencial en 1,0 = 2,718281828459045

Algunos casos especiales

En matemáticas existen conceptos de forma indeterminada, así como de infinito positivo y negativo. Un número positivo dividido por 0,0 da infinito positivo y un número negativo da infinito negativo. Puede obtener la forma indeterminada de diferentes maneras. Por ejemplo, si intenta dividir cero por cero o infinito a infinito. En Java hay constantes especiales de la clase Double como Double.NaN (forma algo indeterminada), Double.POSITIVE_INFINITY y Double.NEGATIVE_INFINITY . El método Math.exp() se comporta de manera específica frente a estos tres conceptos:
  • Si el argumento es NaN, el resultado también es NaN.
  • Si el argumento es infinito positivo, entonces el resultado también es infinito positivo.
  • Si el argumento es infinito negativo, entonces el resultado es cero positivo.
Aquí hay un ejemplo de código para casos especiales:

public class ExpSpecialCases {

   public static void main(String[] args) {

   double positiveInfinity = Double.POSITIVE_INFINITY;
   double negativeInfinity = Double.NEGATIVE_INFINITY;
   double nan = Double.NaN;

   //The argument is positive infinity, the output is positive infinity
       System.out.println(Math.exp(positiveInfinity));

   //The argument is negative infinity, the output is zero
       System.out.println(Math.exp(negativeInfinity));

   //The argument is NaN, the output is NaN
       System.out.println(Math.exp(nan));
}
}
La salida es:
Infinito 0.0 NaN
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION