Математика (числа) в языке 1С 8.3, 8.2

Автор: | Ноябрь 8, 2019
&НаКлиенте
Процедура ВыполнитьКод(Команда)
 
    /// Как округлить число в 1с 8.3, 8.2
 
    // до первого знака после запятой
    // случай когда (N + 1) знак < 5
    Сообщить(Окр(321.123, 1)); // 321.1
 
    // до первого знака после запятой
    // случай когда (N + 1) знак >= 5
    Сообщить(Окр(321.163, 1)); // 321.2
 
    // особый случай:
    // если при округлении до N-го знака
    // (N + 1)-й знак равен 5, а все последующие
    // знаки равны нулю, то результат округления
    // будет зависеть от третьего параметра функции Окр
 
    Сообщить(Окр(100.350, 1, РежимОкругления.Окр15как10)); // вернёт 100.3
    Сообщить(Окр(100.350, 1, РежимОкругления.Окр15как20)); // вернёт 100.4
 
    // по умолчанию значение третьего параметра
    // равно РежимОкругления.Окр15как20 (округление в большую сторону)
 
    /// Как получить целую часть числа в 1с 8.3, 8.2
 
    Сообщить(Цел(12.654)); // 12
 
    /// Как возвести число в степень в 1с 8.3, 8.2
 
    Сообщить(Pow(10, 3)); // 10^3 = 1000
 
    /// Как извлечь квадратный корень из числа в 1с 8.3, 8.2
 
    Сообщить(Sqrt(25)); // 5
 
    /// Как вычислить максимальное из нескольких значений в 1с 8.3, 8.2
 
    Сообщить(Макс(1, 2, 3)); // 3
    Сообщить(Макс("aaa", "bbb", "ccc")); // ccc
    Сообщить(Макс(ТекущаяДата(), ДобавитьМесяц(ТекущаяДата(), 1)));
    Сообщить(Макс(Истина, Ложь)); // Истина
 
    /// Как вычислить минимальное из нескольких значений в 1с 8.3, 8.2
 
    Сообщить(Мин(1, 2, 3)); // 1
    Сообщить(Мин("aaa", "bbb", "ccc")); // aaa
    Сообщить(Мин(ТекущаяДата(), ДобавитьМесяц(ТекущаяДата(), 1)));
    Сообщить(Мин(Истина, Ложь)); // Ложь
 
    /// Как вычислить выражение из строки в 1с 8.3, 8.2
 
    Сообщить(Вычислить("1+2")); // 3
    Сообщить(Вычислить("ИСТИНА И ЛОЖЬ")); // Нет
    Сообщить(Вычислить("Sin(3.14)")); // ~0
    Сообщить(Вычислить("Pow(Sin(3.14), 2) + Pow(Cos(3.14), 2)")); // ~1
 
    /// Тригонометрия в 1с 8.3, 8.2
 
    // углы выражаются в радианах
 
    Пи = 3.14;
    E = 2.718; // Число Эйлера http://ru.wikipedia.org/wiki/E_(число)
 
    Сообщить(Cos(Пи / 2)); // ~0
    Сообщить(ACos(0)); // ~1,57
 
    Сообщить(Sin(Пи / 2)); // ~1
    Сообщить(ASin(1)); // ~1,57
 
    Сообщить(Sin(Пи / 2) * Sin(Пи / 2) + Cos(Пи / 2) * Cos(Пи / 2)); // ~1
 
    Сообщить(Sin(Пи / 3) / Cos(Пи / 3)); // 1.73
    Сообщить(Tan(Пи / 3)); // 1.73
    Сообщить(Tan(ATan(1.73))); // 1.73
 
    // экспонента - возведение числа эйлера в степень X
    // http://ru.wikipedia.org/wiki/Экспонента
    Сообщить(Pow(E, 2)); // 7,389
    Сообщить(Exp(2)); // 7,389
 
    // натуральный логарифм - степень в которую надо
    // возвести число эйлера e, чтобы получить X
    // http://ru.wikipedia.org/wiki/Натуральный_логарифм
    Сообщить(Log(9)); // 2,197
    Сообщить(Pow(E, 2.197)); // ~9
 
    // десятичный логарифм - степень в которую надо
    // возвести число 10, чтобы получить X
    // http://ru.wikipedia.org/wiki/Десятичный_логарифм
    Сообщить(Log10(1000)); // 3
    Сообщить(Pow(10, 3)); // 1000
 
    /// Как вывести число без пробелов в 1с 8.3, 8.2
 
    Сообщить(Формат(1000000, "ЧГ=0")); // 1000000
 
КонецПроцедуры
 
/// Скачать и выполнить эти примеры на компьютере

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *