CodeGym/Blogue Java/Random-PT/Método Math.exp() em Java
John Squirrels
Nível 41
San Francisco

Método Math.exp() em Java

Publicado no grupo Random-PT
A classe Math contém métodos para trabalhar com funções matemáticas. Neste artigo, vamos falar sobre o método Math.exp() em Java. Ele retorna o número e elevado à potência de um valor duplo.

O que é uma função exponencial: uma breve introdução matemática

Observação: esta seção explica a matemática por trás do método Math.exp() . Se você já sabe disso, ou apenas quer usar o método sem entender a essência, sinta-se à vontade para passar para o próximo ponto. O expoente é a função y = e x , onde e é um número matemático complicado que é aproximadamente 2,718281828459045. Esse número é tão importante quanto o famoso número pi, mas é conhecido principalmente por matemáticos, programadores e pessoas que trabalham com estatística. A propósito, ele tem um nome: número de Euler. Também e é a base do logaritmo natural. Aqui está o gráfico da função exponencial: Método Math.exp() em Java - 1Os processos que obedecem à lei exponencial possuem uma propriedade comum: para um mesmo intervalo de tempo, seus parâmetros mudam o mesmo número de vezes. Por exemplo, o resfriamento de um líquido: quanto maior a diferença de temperatura entre o ar e o líquido, mais rápido ele esfria. Quanto maior a bola de neve rolando montanha abaixo, mais rápido ela desce.

Método Math.exp() em Java

Agora vamos voltar ao Java. O método double exp(double x) da classe Math calcula o valor da função expoente no ponto x , ou seja, retorna o número e elevado a x . Mais precisamente, retorna um valor aproximado com certa precisão. Retorna o número e de Euler elevado à potência de um valor duplo. Ou seja, Math.exp(2.0) = e 2.0 (aproximadamente é 7.34) Aqui está uma declaração do método:
double exp(double x)
Onde x é o grau para elevar o número e . Vamos dar um exemplo.
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));
   }
}
A saída é:
função exponencial em 2 = 7,38905609893065 função exponencial em 0,5 = 1,6487212707001282 função exponencial em 1,0 = 2,718281828459045

Alguns casos especiais

Na matemática existem conceitos de forma indeterminada, bem como infinito positivo e negativo. Um número positivo dividido por 0,0 dá infinito positivo, e um número negativo dá infinito negativo. Você pode obter a forma indeterminada de diferentes maneiras. Por exemplo, se você tentar dividir zero por zero ou infinito para infinito. Em Java existem constantes especiais da classe Double como Double.NaN (forma um tanto indeterminada), Double.POSITIVE_INFINITY e Double.NEGATIVE_INFINITY . O método Math.exp() se comporta de maneira específica quando se depara com esses três conceitos:
  • Se o argumento for NaN, o resultado também será NaN.
  • Se o argumento for infinito positivo, o resultado também será infinito positivo.
  • Se o argumento for infinito negativo, o resultado será zero positivo.
Aqui está um exemplo de código para casos especiais:
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));
}
}
A saída é:
Infinito 0,0 NaN
Comentários
  • Populares
  • Novas
  • Antigas
Você precisa acessar para deixar um comentário
Esta página ainda não tem nenhum comentário