Математика в языке 1С 8.3, 8.2 (в примерах)

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

Дата Если Массивы Математика Процедуры Строки Циклы
Диалоги ОписаниеТипов ОперационнаяСистема Приложение Соответствие
СписокЗначений Структура ТаблицаЗначений ФайловаяСистема Формат

ОбщиеОбъекты Запросы ПрикладныеОбъекты УниверсальныеФункции

См. урок для начинающих по математическим операциям в 1С
Скачать эти примеры в виде тестовой базы (как загрузить, как исследовать)
Смотреть видео с демонстрацией выполнения кода

Полный синтаксис (нажмите, чтобы раскрыть)

&НаКлиенте
Процедура ВыполнитьКод(Команда)
 
    /// Как округлить число в 1с 8.3, 8.2
 
    // https://ru.wikipedia.org/wiki/Округление
 
    // до первого знака после запятой
    // случай когда (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
 
    Сообщить(5 % 3); // 2
 
    /// Как извлечь квадратный корень из числа в 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
 
КонецПроцедуры
 
/// Скачать и выполнить эти примеры на компьютере

Скачать эти примеры в виде тестовой базы (как загрузить, как исследовать)

Математика в языке 1С 8.3, 8.2 (в примерах)

Дата Если Массивы Математика Процедуры Строки Циклы
Диалоги ОписаниеТипов ОперационнаяСистема Приложение Соответствие
СписокЗначений Структура ТаблицаЗначений ФайловаяСистема Формат

ОбщиеОбъекты Запросы ПрикладныеОбъекты УниверсальныеФункции

С уважением, (преподаватель школы 1С программистов и разработчик обновлятора).



Владимир Милькин
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Нажмите одну из кнопок, чтобы поделиться: