Глобальный контекст.Log10

Методы · Log10

Вычисляет десятичный логарифм параметра <Число>.

Синтаксис

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 и натуральную шкалу для коэффициента, проверяя обратное преобразование.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Все значения учебные и создаются в памяти; документы, регистры и рабочие данные не изменяются.

  2. Выполняйте на сервере учебной базы. Представление десятичного разделителя в сообщениях зависит от локали.


Величина = 1000;
Если Величина <= 0 Тогда
    ВызватьИсключение "Логарифмическая шкала требует положительного значения";
КонецЕсли;
ДесятичныйПоказатель = Log10(Величина);
Восстановленная = Pow(10, ДесятичныйПоказатель);
Сообщить(ДесятичныйПоказатель);
Сообщить(Восстановленная);
НатуральныйКоэффициент = Exp(2);
ОбратныйПоказатель = Log(НатуральныйКоэффициент);
Сообщить(Формат(НатуральныйКоэффициент, "ЧДЦ=6"));
Сообщить(Формат(ОбратныйПоказатель, "ЧДЦ=6"));
Если Восстановленная < 999.999999 Или Восстановленная > 1000.000001 Тогда
    ВызватьИсключение "Десятичная шкала не восстановилась в пределах допуска";
КонецЕсли;
Если ОбратныйПоказатель < 1.999999 Или ОбратныйПоказатель > 2.000001 Тогда
    ВызватьИсключение "Натуральная шкала не восстановилась в пределах допуска";
КонецЕсли;

Разбор по шагам

  1. Log10 даёт показатель степени основания 10, поэтому 1000 соответствует 3.

  2. Pow с основанием 10 выполняет обратное преобразование.

  3. Exp использует основание e, обратная функция для него — Log, а не Log10.

  4. Для преобразований применяем допуск и отказываемся от нулевого или отрицательного исходного значения.

Как проверить результат

  1. Десятичный показатель около 3, восстановленная величина около 1000.

  2. Exp(2) около 7.389056, Log(Exp(2)) около 2.

  3. Замените Величина на 0: сработает понятная проверка до вызова Log10.

Ожидаемый результат

Обе логарифмические шкалы прошли предусмотренную самопроверку при выполнении урока.

На что обратить внимание

  1. Основание логарифма — часть контракта вычисления; Log и Log10 нельзя подменять друг другом.

  2. Экстремальные аргументы могут выйти за числовые возможности платформы; пример использует небольшие значения.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.