Калькулятор математических выражений — вычисляйте любые формулы
Введите математическое выражение с помощью +, -, *, /, ^, %, скобок и функций вроде sqrt, sin, cos, log. Результаты появляются мгновенно по мере ввода. Без внешних библиотек — парсер работает полностью в вашем браузере без отправки данных на сервер.
Как это работает
Поддерживаемые операции и функции
Калькулятор поддерживает четыре основных арифметических оператора (+, -, *, /), а также возведение в степень (^) и остаток от деления (%). Скобки можно вкладывать на любую глубину.
Встроенные функции охватывают наиболее распространённые математические потребности: sqrt(x) и cbrt(x) — для квадратного и кубического корня; abs(x) — для абсолютного значения; sin(x), cos(x), tan(x) — для тригонометрии в градусах; log(x) — для натурального логарифма, log2(x) и log10(x) — для логарифмов по основанию 2 и 10; а также floor(x), ceil(x), round(x) — для округления. Константы pi и e доступны по имени.
Практические применения вычислителя выражений
Быстрые цепочки вычислений — это то, в чём вычислители выражений особенно сильны. Вместо того чтобы вводить числа в калькулятор шаг за шагом и рисковать забыть промежуточный результат, вы можете ввести всю цепочку как одно выражение и сразу получить ответ.
Инженерные и научные задачи — преобразование единиц, расчёт напряжений, статистические формулы — нередко требуют комбинаций квадратных корней, степеней и логарифмов. Вводя полную формулу здесь, вы оставляете отслеживаемую запись вычисления, в отличие от последовательности нажатий кнопок на физическом калькуляторе.
Порядок вычислений
Парсер следует стандартному математическому приоритету: сначала скобки, затем возведение в степень (право-ассоциативное), затем умножение/деление/остаток (слева направо), затем сложение и вычитание (слева направо). Это соответствует правилам BODMAS/PEMDAS, которые изучают в школе.
Поддерживается унарный минус (например, -3^2 вычисляется как -(3^2) = -9, что соответствует общепринятой математической нотации). Если вам нужно (-3)^2 = 9, добавьте явные скобки. При сомнениях ставьте скобки щедро — они никогда не ухудшают читаемость.
Частые вопросы
›Почему тригонометрические функции используют градусы, а не радианы?
Градусы более интуитивны для повседневного использования — большинство людей воспринимают углы как 0–360, а не 0–2π. Парсер конвертирует внутри, поэтому sin(90) = 1 как и ожидается. Если вам нужны радианы, умножьте на pi/180: sin(1.5708) даёт тот же результат, что и sin(90).
›В чём разница между log и log10?
log(x) вычисляет натуральный логарифм (основание e ≈ 2,718). log10(x) использует основание 10, что обычно имеют в виду, когда пишут 'log' вне контекста математического анализа. log2(x) использует основание 2, распространённое в теории информации и информатике.
›^ означает возведение в степень или побитовый XOR?
В этом калькуляторе ^ всегда означает возведение в степень, а не побитовый XOR. Поэтому 2^10 = 1024. Для побитовых операций потребуется другой инструмент.
›Можно ли использовать пробелы в выражениях?
Да. Пробелы игнорируются парсером, поэтому '2 ^ 10 + sqrt( 16 )' эквивалентно '2^10+sqrt(16)'. Добавляйте пробелы везде, где они улучшают читаемость.
›Что происходит при делении на ноль?
Калькулятор обнаруживает деление на ноль и выводит сообщение об ошибке вместо отображения Infinity или NaN. Исправьте выражение и попробуйте снова.
›Сколько знаков после запятой отображается в результате?
До 10 значащих знаков после запятой, отформатированных в числовом стиле вашего региона. Небольшие ошибки округления в числах с плавающей точкой (например, 0,9999999999 вместо 1) являются нормальным следствием двоичной арифметики с плавающей запятой.
›Это безопаснее, чем использование eval() в JavaScript?
Да. Этот инструмент использует написанный вручную рекурсивный нисходящий парсер, который распознаёт только перечисленные операторы и функции. eval() или его аналоги никогда не вызываются, поэтому произвольный код не может быть внедрён или выполнен.
›Покидает ли моё выражение браузер?
Нет. Парсер работает полностью в вашем браузере. Ничто из того, что вы вводите, не отправляется на сервер и нигде не записывается.
Похожие инструменты
Обновлено: