Справочник встроенных функций
Здесь перечислены все встроенные функции Varlig Calc. Вызывайте функцию по имени с аргументами в скобках через запятые: sqrt(16), round(17.46, 0.05).
- Регистр имён функций неважен:
SQRT(16)тоже работает. - Число аргументов проверяется:
sqrt(4, 9)вызывает ошибку, а не игнорирует 9. - Числа могут сохранять разделители тысяч. Запятая перед тремя цифрами группирует разряды, а с пробелом — разделяет аргументы. Поэтому
max(1,000, 2,000)равно 2 000, аsqrt(1,024)— 32. - Округляйте или переводите результат функции в той же строке:
sqrt(2) to 4 dpилиabs(-5 km) in m. - Найдите имя в таблице, затем перейдите к его разделу с подробностями и примерами.
У многих функций есть английская словесная форма, например square root of 16; см. Математика словами. О создании своих — Собственные функции.
Все функции
| Функция | Значение |
|---|---|
abs(x) |
Абсолютная величина с сохранением единиц; модуль комплексного числа |
sign(x) |
−1, 0 или 1 |
int(x), trunc(x) |
Целая часть с усечением к нулю |
round(x), round(x, step) |
Ближайшее целое или ближайшее кратное step |
floor(x), floor(x, step) |
Округление вниз, к минус бесконечности |
ceil(x), ceil(x, step) |
Округление вверх, к плюс бесконечности |
sqrt(x), cbrt(x) |
Квадратный и кубический корень; единицы сохраняются, если их степени делятся на степень корня без остатка |
exp(x), ln(x) |
Натуральная экспонента и логарифм |
log(x), log10(x), log2(x), logbase(x, b) |
Логарифмы |
sin, cos, tan |
Тригонометрия в радианах или для угла вроде 30° |
sind, cosd, tand |
Тригонометрия в градусах |
asin, acos, atan |
Обратная тригонометрия с результатом в радианах |
asind, acosd, atand |
Обратная тригонометрия с результатом в градусах |
atan2(y, x) |
Угол в радианах с учётом квадранта |
sinh, cosh, tanh, asinh, acosh, atanh |
Гиперболические функции |
factorial(n), fact(n) |
Факториал; также записывается как n! |
gcd(a, b), lcm(a, b) |
Наибольший общий делитель и наименьшее общее кратное; точный расчёт, в том числе для дробей |
combination(n, k), permutation(n, k) |
Число способов выбора |
clamp(x, low, high) |
Ограничение значения заданными границами |
hex(n), bin(n) |
Отображение числа в шестнадцатеричной или двоичной форме |
random(), rand(), random(a, b), rand(a, b) |
Случайные числа |
complex(re, im), real, imag, conj, arg |
Комплексные числа |
sum, total, product, average, mean, avg, median, min, max, count, length, variance, stddev, stdev |
Суммы и статистика списка; некоторые функции принимают и отдельные аргументы |
sum(expr, var, lo, hi), summation(...), product(expr, var, lo, hi) |
Суммы и произведения по счётчику |
range(a, b), range(a, b, step) |
Список чисел с включением обеих границ |
sort, reverse, unique, slice(list, start, end) |
Изменение порядка или выбор элементов списка |
map(expr, var, list), filter(cond, var, list) |
Вычисление или проверка каждого элемента списка |
dot, cross, identity(n), shape, transpose, det, inverse, trace, rank |
Векторы и матрицы |
solve_system(A, b), eigenvalues, qr, lu, svd |
Системы линейных уравнений и разложения матриц |
solve(equation, var, lo, hi) |
Численное решение уравнения между двумя границами |
differentiate(expr, var), derivative(expr, var) |
Производная в виде формулы |
differentiate(expr, var, point), derivative(expr, var, point) |
Производная в точке в виде числа |
integrate(expr, var, lo, hi) |
Численное вычисление определённого интеграла |
easter(year) |
Западная Пасха |
tyre_speed(width, aspect, rim, rotation) |
Скорость движения по размеру шины и частоте вращения колеса |
Числа и подсчёт
| Функция | Аргументы и значение |
|---|---|
abs(x) |
Абсолютная величина с сохранением единицы; модуль для комплексного числа |
sign(x) |
Знак действительного числа без единиц: -1, 0 или 1 |
int(x), trunc(x) |
Целая часть с усечением к нулю |
sqrt(x) |
Квадратный корень; для отрицательного числа запросите комплексный корень: sqrt(-16 + 0i) |
cbrt(x) |
Кубический корень, в том числе из отрицательного числа |
factorial(n), fact(n) |
Факториал целого числа от 0; также записывается как n! |
gcd(a, b) |
Наибольший общий делитель двух точных чисел, всегда неотрицательный |
lcm(a, b) |
Наименьшее общее кратное двух точных чисел, всегда неотрицательное |
clamp(x, low, high) |
Ограничение значения границами low и high; все значения одного типа, сначала нижняя граница |
permutation(n, k) |
Размещения из n по k с учётом порядка |
combination(n, k) |
Сочетания из n по k без учёта порядка |
hex(x), bin(x) |
Отображение числа в шестнадцатеричной или двоичной форме |
abs(-£45.20) даёт £45.20sign(-5) даёт -1int(7.8) даёт 7sqrt(144 m^2) даёт 12 mcbrt(-27) даёт -3factorial(5) даёт 120gcd(1920, 1080) даёт 120lcm(4, 6) даёт 12clamp(115, 0, 100) даёт 100clamp(£120, £0, £100) даёт £100.00combination(10, 2) даёт 45permutation(8, 3) даёт 336hex(255) даёт 0xFFbin(10) даёт 0b1010Практические примеры: gcd(1920, 1080) помогает получить формат экрана 16:9 делением обеих сторон на 120. Функция combination(10, 2) считает пары в группе из десяти, а permutation(8, 3) — способы распределить три призовых места между восемью бегунами.
Функция clamp сохраняет валюту и единицы, если значение и обе границы однородны: clamp(£120, £0, £100) ограничивает возврат суммой £100,00. Для факториалов и выборок используйте целые числа с k не больше n. Запись 5! сокращает factorial(5). Для корней других степеней используйте root 3 of 27; общей функции root(...) нет.
Округление
Функции round, floor и ceil принимают необязательный шаг округления:
round(17.46, 0.05) даёт 17.45ceil(23, 6) даёт 24floor(7.8) даёт 7Выражение ceil(23, 6) округляет 23 яйца вверх до количества, кратного полной коробке из шести. Шаг — не число десятичных знаков: round(17.456, 2) округляет до кратного 2 и даёт 18. Подсказка round предлагает вместо этого 17.456 to 2 dp. Для значащих цифр пишите to 3 sf. О половинах, отрицательных числах и деньгах см. Округление.
Тригонометрия и углы
| Группа функций | Значение |
|---|---|
sin, cos, tan |
Тригонометрия; число без единиц считается углом в радианах |
sind, cosd, tand |
Тригонометрия; число без единиц считается углом в градусах |
asin, acos, atan |
Обратная тригонометрия; результат имеет единицу «радиан» |
asind, acosd, atand |
Обратная тригонометрия с результатом в градусах |
atan2(y, x) |
Угол с учётом квадранта в виде числа радиан без единицы |
sinh, cosh, tanh |
Гиперболические функции |
asinh, acosh, atanh |
Обратные гиперболические функции |
sin(30°) даёт 0.5cosd(60) даёт 0.5tan(45°) даёт 1sin(pi/2) даёт 1asind(0.5) даёт 30°asin(1) даёт 1.5707963268 radasin(0.5) in degrees даёт 30°atan2(-1, -1) * 180 / pi даёт -135cosh(0) даёт 1Функции sin, cos и tan принимают угол в любой угловой единице, например 30°, 30 degrees или 30 deg. Чтобы вывести результат asin, acos или atan в градусах, добавьте in degrees либо используйте градусные варианты функций.
Функция atan2 сначала принимает координату y и учитывает четверть: atan2(-1, -1) указывает вниз и влево (−135°), чего одно atan(1) определить не может.
Гиперболические функции принимают числа без единиц. Обратные функции допускают только значения в своей действительной области: asin(2) даёт Error: imaginary number. Для комплексного результата см. Комплексные числа.
Логарифмы и экспоненты
| Функция | Значение |
|---|---|
ln(x) |
Натуральный логарифм |
log(x), log10(x) |
Десятичный логарифм |
log2(x) |
Двоичный логарифм |
logbase(x, b) |
Логарифм x по основанию b |
exp(x) |
Натуральная экспонента |
log(1000) даёт 3log10(1000000) даёт 6log2(1024) даёт 10logbase(81, 3) даёт 4ln(exp(2)) даёт 2exp(0) даёт 1Логарифм требует положительное число: log(0) даёт Error: ∞, а log(-100) — Error: imaginary number. Для комплексного логарифма задайте комплексное число, например ln(-1 + 0i). Основание должно быть положительным и не равным 1. Логарифмы, экспоненты и гиперболические функции не принимают единицы и деньги.
Случайные значения
random number between 1 and 6 даёт 4random(1, 6) даёт 2rand(1, 100) даёт 57random() даёт 0.4381930527rand() даёт 0.9102746385random(0, 1) даёт 0.2373052626- Функция
random(a, b)и выражениеrandom number between a and bвыбирают целое отaдоbвключительно. - Функция
random()возвращает дробное число от 0 включительно до 1 невключительно. Особый случайrandom(0, 1)работает так же. - Имя
randравнозначноrandom. - Границы должны быть целыми числами без единиц в диапазоне 64-битных целых, меньшая — первой. Один аргумент, более двух, дробные значения или обратный порядок вызывают ошибку.
- При пересчёте заметки Varlig может выбрать новое число. Сохраните его в переменной, например
roll = random(1, 6), если последующие строки должны использовать один и тот же результат.
Списки и статистика
average([12, 18, 9, 21]) даёт 15median([3, 9, 4, 7, 5]) даёт 5sum([£12.50, £8, £4.25]) даёт £24.75max(4, 9, 2) даёт 9stddev([2, 4, 6]) даёт 2sum(k, k, 1, 100) даёт 5,050range(0, 20, 5) даёт [0, 5, 10, 15, 20]sort([3, 1, 2]) даёт [1, 2, 3]slice([10, 20, 30, 40], 1, 3) даёт [20, 30]map(x * 1.2, x, [£10, £25]) даёт [£12.00, £30.00]filter(x > 10, x, [4, 12, 18]) даёт [12, 18]sum (также total), product, average (также mean и avg), median, min, max, count, length, variance и stddev (также stdev) работают со списком; некоторые также принимают отдельные аргументы. Процентили тоже поддерживаются. С четырьмя аргументами sum, summation и product суммируют или перемножают выражение, пока счётчик проходит значения от lo до hi. reverse и unique также принимают список. Позиции в slice, статистики выборки и генеральной совокупности и другие подробности описаны в разделе Списки и статистика.
Векторы, матрицы и математический анализ
dot([1, 2, 3], [4, 5, 6]) даёт 32det([[2, 1], [1, 3]]) даёт 5solve_system([[1, 1], [1, -1]], [10, 2]) даёт [6, 4]solve(x * 1.2 = 60, x, 0, 100) даёт 50differentiate(x^2, x, 3) даёт 6integrate(x^2, x, 0, 3) даёт 9Выражение solve_system([[1, 1], [1, -1]], [10, 2]) находит два числа с суммой 10 и разностью 2. Выражение solve(x * 1.2 = 60, x, 0, 100) ищет в диапазоне 0–100 цену до НДС 20%, дающую итог 60. О функциях cross, identity, shape, transpose, inverse, trace, rank, eigenvalues, qr, lu и svd см. Векторы и матрицы. О производных в виде формул и ограничениях решения уравнений и интегрирования — Суммы, уравнения и математический анализ и Расширенная математика.
Комплексные числа
abs(3 + 4i) даёт 5complex(3, 4) даёт 3 + 4iconj(3 + 4i) даёт 3 - 4ireal(3 + 4i) даёт 3imag(3 + 4i) даёт 4Функция arg(z) даёт аргумент комплексного числа в радианах. См. Комплексные числа.
Даты и транспорт
easter(2030) даёт April 21, 2030tyre_speed(205, 55, 16, 1000 rpm) in km/h даёт 119.1103438682 km/hФункция easter(year) даёт западную Пасху указанного года — ту же дату, что выражение Easter 2030. От неё можно считать дни: easter(2030) + 1 day. См. Даты. Функция tyre_speed принимает ширину шины в миллиметрах, отношение высоты к ширине в процентах, размер диска в дюймах и частоту вращения колеса; см. Кулинария, звук, экраны и механика.