1. Введение
В этом коротком руководстве мы научимся вычислять логарифмы в Java. Мы рассмотрим как десятичные, так и натуральные логарифмы, а также логарифмы с пользовательским основанием.
2. Логарифмы
Логарифм — это математическая формула, представляющая степень, в которую мы должны возвести фиксированное число (по основанию), чтобы получить данное число.
В своей простейшей форме он отвечает на вопрос: сколько раз нужно умножить одно число, чтобы получить другое число?
Мы можем определить логарифм следующим уравнением:
точно, если
3. Вычисление десятичных логарифмов
Логарифмы по основанию 10 называются десятичными логарифмами.
Чтобы вычислить десятичный логарифм в Java, мы можем просто использовать метод Math.log10()
:
@Test
public void givenLog10_shouldReturnValidResults() {
assertEquals(Math.log10(100), 2);
assertEquals(Math.log10(1000), 3);
}
4. Вычисление натуральных логарифмов
Логарифмы по основанию e
называются натуральными логарифмами.
Для вычисления натурального логарифма в Java мы используем метод Math.log()
:
@Test
public void givenLog10_shouldReturnValidResults() {
assertEquals(Math.log(Math.E), 1);
assertEquals(Math.log(10), 2.30258);
}
5. Вычисление логарифмов с пользовательской базой
Чтобы вычислить логарифм с пользовательской базой в Java, мы используем следующее тождество:
@Test
public void givenCustomLog_shouldReturnValidResults() {
assertEquals(customLog(2, 256), 8);
assertEquals(customLog(10, 100), 2);
}
private static double customLog(double base, double logNumber) {
return Math.log(logNumber) / Math.log(base);
}
6. Заключение
В этом уроке мы узнали, как вычислять логарифмы в Java.
Как всегда, исходный код доступен на GitHub .