Работа с числом в 1С

Здравствуйте дорогие читатели. Я уже писал о таких примитивных типах данных как NULL и Строка, а сегодня рассмотрим примитивный тип данных Число (Number).

Числовым у нас может быть реквизит объекта конфигурации или переменные в модулях.

Максимально допустимая разрядность числа составляет 38 знаков, длина целой части не может превышать 32 символа, точность — 10 символов. Хотя в переменных можно оперировать числами превышающих разрядность в 38 символов, но в ИБ (информационную базу) можем записывать значения с длинной целой части не больше 32-х знаков.

Над данными числового типа применимы операции: +, -, *, /, ( ), %(остаток от деления нацело 10%3=1).

Математические функции для чисел можно посмотреть в синтакс помощнике
Общее описание встроенного языка-> Встроенные функции-> Функции по работе с типом Число

Из всех функции, которые там приведены лично мне пока пришлось работать только с двумя:
Окр(<Число>, <Разрядность>, <РежимОкругления>) Функция округляет исходное число до нужной разрядности в соответствии с заданным режимом округления.
Параметры: <Число> (обязательный), Исходное число. Остальные параметры не обязательны.

Пример:

// Округлим цену до копеек
ОкругленнаяЦена = Окр(Цена, 2);
// Округлим цену до сотен рублей
ОкругленнаяЦена = Окр(Цена, -2);

Цел(<Число>) — Функция вычисляет целую часть переданного числа, полностью отсекая дробную часть.

Пример:  МожноКупить = Цел(Наличность/Цена);

Если вы сталкивались в задачах с другими функциями, напишите примеры в комментариях.

Часто на практике встречается преобразование типов данных из строки в число, для этих целей есть функция Число().

Функция Число() — Преобразует полученный параметр (параметр обычно строкового типа) в значение типа Число.
Пример: КонтрольноеЧисло = Число(Прав(СтраховойНомер,2));

Типа Булево преобразуется в число:
• Ложь преобразуется в 0;
• Истина преобразуется в 1.

Приоритет арифметических операций:
1) ( )
2) Унарные арифметические операции (+, -)
3) *, /, %
4) Бинарные арифметические операции (+, -)
5) Операции сравнения (>,>=,
6) НЕ
7) И
8) ИЛИ

Приведу еще пару функций которые полезны при работе с Числом

Формат(<Значение>, <ФорматнаяСтрока>) Функция формирует удобное для чтения представление значений.
Параметры: <Значение> (обязательный) Тип параметра: Число; Дата; Булево.

Форматную строку удобно задавать, вызвав: Конструктор форматной строки

Конструктор_форматной_строки

Макс(<Значение1>,…,<ЗначениеN>) Функция определяет максимальное значение из полученных параметров.
Параметры: <Значение1>,…,<ЗначениеN> (обязательный) и могут иметь один Тип: Число; Строка; Дата; Булево.

Пример:
// Пример для чисел

A = Макс(1, 2, 3);
// A = 3 

Мин(<Значение1>,…,<ЗначениеN>) Из полученных параметров функция определяет минимальное значение.

Пример:

// Пример для чисел

A = Мин(1, 2, 3);
// А = 1 

Часто встречаются задачи, когда число надо представить прописью, для этих целей есть функиця:
ЧислоПрописью(<Число>, <ФорматнаяСтрока>, <ПараметрыПредметаИсчисления>) Функция формирует представление числа прописью.

Я не старался переписать справку, хотя скорей всего так и получилось.
Чаще заглядывайте в синтакс-помощник.

В данных статьях я описывал примитивные типы данных: Работа со строками 1С и NULL 1C.

P.S. Бармен показывает шоу

1 ответить

Ответить

Want to join the discussion?
Feel free to contribute!

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

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