Klasa Math zawiera metody do pracy z funkcjami matematycznymi. W tym artykule omówimy metodę Math.exp() w Javie. Zwraca liczbę e podniesioną do potęgi podwójnej wartości.
Co to jest funkcja wykładnicza: bardzo krótkie wprowadzenie do matematyki
Uwaga: W tej sekcji wyjaśniono matematykę stojącą za metodą Math.exp() . Jeśli już to wiesz lub po prostu chcesz skorzystać z metody bez zrozumienia istoty, możesz przejść do następnego punktu. Wykładnik to funkcja y = e x , gdzie e jest podstępną liczbą matematyczną, która wynosi w przybliżeniu 2,718281828459045. Liczba ta jest równie ważna jak słynna liczba pi, ale znana jest głównie matematykom, programistom i osobom zajmującym się statystyką. Nawiasem mówiąc, ma swoją nazwę: liczba Eulera. Również e jest podstawą logarytmu naturalnego. Oto wykres funkcji wykładniczej: Procesy zgodne z prawem wykładniczym mają jedną wspólną właściwość: w tym samym przedziale czasu ich parametry zmieniają się tyle samo razy. Na przykład chłodzenie cieczy: im większa różnica temperatur między powietrzem a cieczą, tym szybciej się ochładza. Im większa staje się śnieżka tocząca się po zboczu góry, tym szybciej się toczy.Metoda Math.exp() w Javie
Wróćmy teraz do Javy. Metoda double exp(double x) klasy Math oblicza wartość funkcji wykładniczej w punkcie x , innymi słowy zwraca liczbę e do potęgi x . Mówiąc dokładniej, zwraca przybliżoną wartość z pewną precyzją. Zwraca liczbę Eulera e podniesioną do potęgi podwójnej wartości. Oznacza to, że Math.exp(2.0) = e 2.0 (w przybliżeniu 7,34) Oto deklaracja metody:
double exp(double x)
Gdzie x to stopień podniesienia liczby e . Podajmy przykład.
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));
}
}
Dane wyjściowe to:
funkcja wykładnicza w 2 = 7,38905609893065
funkcja wykładnicza w 0,5 = 1,6487212707001282
funkcja wykładnicza w 1,0 = 2,718281828459045
Niektóre szczególne przypadki
W matematyce istnieją pojęcia o nieokreślonej formie, a także dodatniej i ujemnej nieskończoności. Liczba dodatnia podzielona przez 0,0 daje dodatnią nieskończoność, a liczba ujemna daje ujemną nieskończoność. Możesz uzyskać nieokreśloną formę na różne sposoby. Na przykład, jeśli spróbujesz podzielić zero przez zero lub nieskończoność do nieskończoności. W Javie istnieją specjalne stałe z klasy Double , takie jak Double.NaN (forma nieco nieokreślona), Double.POSITIVE_INFINITY i Double.NEGATIVE_INFINITY . Metoda Math.exp() zachowuje się w określony sposób w obliczu tych trzech pojęć:- Jeśli argumentem jest NaN, wynikiem jest również NaN.
- Jeśli argumentem jest dodatnia nieskończoność, to wynikiem jest również dodatnia nieskończoność.
- Jeśli argumentem jest ujemna nieskończoność, wynikiem jest dodatnie zero.
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));
}
}
Dane wyjściowe to:
Nieskończoność
0,0
NaN
GO TO FULL VERSION