Вычисляет десятичный логарифм параметра <Число>.
Синтаксис
Log10(<Число>)Примеры платформы
Частота = 100;
Попытка
Шкала = Log10(Частота);
Сообщить("Log10(Частота)="+Шкала);
Исключение
Сообщить("При значении параметра "+Частота
+" выдается сообщение об ошибке:"
+Символы.ПС+""""+ОписаниеОшибки()+"""");
КонецПопытки;Полное описание, параметры и ограничения
Глобальный контекст.Log10 (Global context.Log10)
Глобальный контекст (Global context)
Log10 (Log10)
Доступен, начиная с версии 8.0.
Синтаксис:
Log10(<Число>)
Параметры:
<Число> (обязательный)
Тип: Число.
Исходное число, больше 0.
Возвращаемое значение:
Тип: Число.
Значение результата вычисления логарифма.
Описание:
Вычисляет десятичный логарифм параметра <Число>.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Внимание: Данный метод не поддерживается при работе через COM-соединение
Примечание:
При отрицательном или нулевом значении параметра происходит ошибка "Неправильное значение аргумента встроенной функции (Log10)".
Пример:
Частота = 100;
Попытка
Шкала = Log10(Частота);
Сообщить("Log10(Частота)="+Шкала);
Исключение
Сообщить("При значении параметра "+Частота
+" выдается сообщение об ошибке:"
+Символы.ПС+""""+ОписаниеОшибки()+"""");
КонецПопытки;
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Преобразовать величину в логарифмическую шкалу и обратно
Показываем десятичную шкалу 1000 → 3 и натуральную шкалу для коэффициента, проверяя обратное преобразование.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Все значения учебные и создаются в памяти; документы, регистры и рабочие данные не изменяются.
Выполняйте на сервере учебной базы. Представление десятичного разделителя в сообщениях зависит от локали.
Величина = 1000;
Если Величина <= 0 Тогда
ВызватьИсключение "Логарифмическая шкала требует положительного значения";
КонецЕсли;
ДесятичныйПоказатель = Log10(Величина);
Восстановленная = Pow(10, ДесятичныйПоказатель);
Сообщить(ДесятичныйПоказатель);
Сообщить(Восстановленная);
НатуральныйКоэффициент = Exp(2);
ОбратныйПоказатель = Log(НатуральныйКоэффициент);
Сообщить(Формат(НатуральныйКоэффициент, "ЧДЦ=6"));
Сообщить(Формат(ОбратныйПоказатель, "ЧДЦ=6"));
Если Восстановленная < 999.999999 Или Восстановленная > 1000.000001 Тогда
ВызватьИсключение "Десятичная шкала не восстановилась в пределах допуска";
КонецЕсли;
Если ОбратныйПоказатель < 1.999999 Или ОбратныйПоказатель > 2.000001 Тогда
ВызватьИсключение "Натуральная шкала не восстановилась в пределах допуска";
КонецЕсли;Разбор по шагам
Log10 даёт показатель степени основания 10, поэтому 1000 соответствует 3.
Pow с основанием 10 выполняет обратное преобразование.
Exp использует основание e, обратная функция для него — Log, а не Log10.
Для преобразований применяем допуск и отказываемся от нулевого или отрицательного исходного значения.
Как проверить результат
Десятичный показатель около 3, восстановленная величина около 1000.
Exp(2) около 7.389056, Log(Exp(2)) около 2.
Замените Величина на 0: сработает понятная проверка до вызова Log10.
Ожидаемый результат
Обе логарифмические шкалы прошли предусмотренную самопроверку при выполнении урока.
На что обратить внимание
Основание логарифма — часть контракта вычисления; Log и Log10 нельзя подменять друг другом.
Экстремальные аргументы могут выйти за числовые возможности платформы; пример использует небольшие значения.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.