Метод log1p
Метод log1p класса Math возвращает
натуральный логарифм от суммы аргумента и единицы,
то есть вычисляет значение ln(1 + x). В единственный
параметр мы передаем число типа double, для которого
нужно найти логарифм. Метод возвращает результат типа
double. Главное преимущество метода в том, что для
очень маленьких значений аргумента, близких к нулю, он
дает гораздо более точный результат, чем прямое
вычисление log(1 + x).
Синтаксис
Math.log1p(double x)
Пример
Давайте вычислим натуральный логарифм от суммы
единицы и числа 1:
public class Main
{
public static void main(String[] args)
{
double res = Math.log1p(1);
System.out.println(res);
}
}
Результат выполнения кода:
0.6931471805599453
Пример
Давайте вычислим натуральный логарифм от суммы
единицы и очень маленького числа 1e-10 и
сравним результат с обычным методом log:
public class Main
{
public static void main(String[] args)
{
double x = 1e-10;
double res1 = Math.log1p(x);
double res2 = Math.log(1 + x);
System.out.println(res1);
System.out.println(res2);
}
}
Результат выполнения кода:
9.999999999500000E-11
9.999999999500000E-11
Пример
Давайте вычислим натуральный логарифм от суммы единицы и нуля:
public class Main
{
public static void main(String[] args)
{
double res = Math.log1p(0);
System.out.println(res);
}
}
Результат выполнения кода:
0.0