Numlex Документация
Справочник синтаксиса
Сообщить о проблеме

Встроенные функции

Все 27 математические функции с арностью, областями определения и примерами, а также синтаксис вызова, вложенность и разделители аргументов.

Numlex содержит ровно 27 встроенных функций — все скалярные, все строгие. Встроенных e и pi нет, имена не зависят от регистра, а вызов с опечаткой или неверным числом аргументов — видимая ошибка, а не ноль.

Эта страница описывает правила вызова, поведение разделителей аргументов в зависимости от регионального формата чисел (round(1.25, 0) против round(1,25; 0)) и полную таблицу 27 функций с областями определения и примерами.

Синтаксис вызова

Пишите name(arg1, arg2, …). Имена функций не зависят от регистра (SQRT(9) = sqrt(9)), и пробел перед ( допускается.

Вызовы строгие. Неизвестное имя, неверное число аргументов, пропущенная или лишняя запятая, незакрытая скобка или значение вне области определения функции — ошибка, без догадок. Строка, похожая на вызов, следует строгим правилам из языка листа: неизвестное имя функции — ошибка, а не группа в скобках.

В вызывной позиции встроенная функция имеет приоритет над переменной с тем же именем — sum = 5 не мешает sum(1, 2). Во всех прочих позициях sum — обычный идентификатор.

Функции скалярны (не принимают и не возвращают единицы), вложенные вызовы разрешены: sqrt(abs(-16)) → 4.

Встроенных констант нет

Встроенных констант e и pi нет. ln(e) не вычисляется, если e не объявлена заранее (e = 2.71828…). То же касается pi: объявите её как именованное значение или константу настроек, если она нужна.

Разделители аргументов и запятые

Разделитель зависит от регионального формата чисел:

  • Точечные форматы (North America, System с точкой): разделитель аргументов — , — round(1.25, 0).
  • Запятые форматы (Western Europe, Eastern Europe, System с запятой): десятичный разделитель — запятая, а разделитель аргументов — ; — round(1,25; 0) = 1.

Запятые внутри вызова читаются по форме:

ВводИнтерпретация
sum(1,234)одно число (1234) — запятая-группировка требует ровно трёх цифр после неё и целой части перед ней
sum(1, 234)два аргумента
sum(1,2,3)три аргумента
1,234,567одно число (вне вызовов)

27 функции

ФункцияАргументыСмыслОбласть определенияПример
sqrt1квадратный кореньx ≥ 0sqrt(16) → 4
abs1модульлюбаяabs(-3) → 3
round1–2округление (от нуля); 2-й аргумент — целое число цифр −15…15целые цифрыround(2.5) → 3, round(2.345, 2) → 2.35
min≥1минимум—min(3, 1, 2) → 1
max≥1максимум—max(1, 2) → 2
sum≥1сумма—sum(1, 2, 3) → 6
average≥1среднее—average(1, 2, 3) → 2
pow2степень (тот же контракт, что у ^)конечный результатpow(2, 10) → 1024
ln1натуральный логарифмx > 0ln(1) → 0
log1–2логарифм: 1 аргумент — по основанию 10; 2 — по основанию bx > 0; b > 0, b ≠ 1log(100) → 2, log(8, 2) → 3
log101логарифм по основанию 10x > 0log10(1000) → 3
sin1синусрадианыsin(0) → 0
cos1косинусрадианыcos(0) → 1
tan1тангенсрадианыtan(0) → 0
asin1арксинус|x| ≤ 1, радианыasin(1) → π/2
acos1арккосинус|x| ≤ 1, радианыacos(0) → π/2
atan1арктангенслюбая, радианыatan(1) → π/4
radians1градусы → радианы—radians(180) → π
degrees1радианы → градусы—degrees(atan(1)) → 45
int1целое (десятичная база)точное целоеint(45) → 45
bin1целое в двоичной базеточное целоеbin(5) → 0b101
oct1целое в восьмеричной базеточное целоеoct(8) → 0o10
hex1целое в шестнадцатеричной базеточное целоеhex(255) → 0xFF
count≥1число аргументов—count(1, 2, 3) → 3
median≥1медиана—median(1, 2, 3, 4) → 2.5
stdev≥2выборочное стандартное отклонение (n−1)конечный результатstdev(2,4,4,4,5,5,7,9) → ≈2.13809
rand2равномерное целое в low...high включительно (системная энтропия)точные целые, low ≤ highrand(1, 6)

Статистика, теги и подытоги

Последние четыре функции — count, median, stdev и rand — относятся к работе с тегами, подытогами и статистикой: строки-теги, секции ---, подытоги, общие итоги, агрегаты по тегам, естественные статистические фразы и настраиваемая статистика футера. Их поведение (допустимые строки, запросы по тегам только выше, динамическое значение rand и меню футера) описано в Теги, подытоги и статистика; эта страница описывает только синтаксис вызова.

rand(low, high) — равномерное целое из системной энтропии, включая границы. Оно остаётся стабильным, пока вы не измените лист или не нажмёте ⌘R (Recalculate Dynamic Values); оно никогда не токенизируется и не входит в цепочку Previous Answer; экспорт PDF фиксирует текущее значение.

Целочисленные функции с базами

int, bin, oct и hex возвращают точное целое с запрошенным представлением базы, когда значение точно целое (hex(255) → 0xFF); иначе они возвращают строгое целое значение.

Правила точных целых — как выражения в них попадают, их приоритет и поведение при переполнении — описаны в операторах и логике и числах и системах счисления.

Связанные разделы

Нашли ошибку в документации? Сообщите о ней на GitHub