Инженерный калькулятор онлайн: тригонометрия, логарифмы, степени
Инженерный калькулятор
Выражения с функциями sin/cos/log/√/!, степенями и скобками. Парсер на алгоритме сортировочной станции Дейкстры, без eval. Клавиатурный ввод, история, память, режим DEG/RAD/GRAD.
- Здесь будут последние вычисления.
Кликните на строку, чтобы подставить выражение в дисплей.
Операторы (по приоритету): ^ (степень) → унарный −, ! (факториал) → × ÷ % mod → + −. Скобки ( ) имеют высший приоритет.
Неявное умножение: 2π = 2×π, 2(3+4) = 2×(3+4), 3sin(45) = 3×sin(45).
Режим углов: тригонометрические функции (sin, cos, tan и их арки) работают в выбранном режиме. По умолчанию — DEG (градусы). Переключатель в верхней панели дисплея.
Память: M+ — прибавить текущий результат к памяти, M− — вычесть, MR — вставить значение памяти в выражение, MC — очистить. Значение памяти показано в верхнем правом углу дисплея.
Переменная Ans: кнопка Ans вставляет в выражение предыдущий результат. Полезно для цепочек вычислений.
| Функция | Значение | Пример |
|---|---|---|
| sin, cos, tan | Тригонометрические | sin(30) = 0,5 (в DEG) |
| asin, acos, atan | Арктангенс, арксинус, арккосинус | asin(0,5) = 30 (в DEG) |
| sinh, cosh, tanh | Гиперболические | sinh(1) ≈ 1,175 |
| ln(x) | Натуральный логарифм (по основанию e) | ln(e) = 1 |
| lg(x) | Десятичный логарифм | lg(1000) = 3 |
| log(base, x) | Логарифм по произвольному основанию | log(2, 1024) = 10 |
| √(x), sqrt(x) | Квадратный корень | √(144) = 12 |
| cbrt(x), ∛(x) | Кубический корень | cbrt(27) = 3 |
| exp(x) | e в степени x | exp(1) ≈ 2,718 |
| abs(x) | Модуль числа | abs(−5) = 5 |
| x! | Факториал (целое ≥ 0) | 5! = 120 |
| mod(a, b) | Остаток от деления | mod(17, 5) = 2 |
| gcd(a, b) | Наибольший общий делитель | gcd(48, 18) = 6 |
| lcm(a, b) | Наименьшее общее кратное | lcm(6, 4) = 12 |
| round(x) | Округление до целого | round(3,7) = 4 |
| min, max | Минимум/максимум из списка | max(3, 1, 9, 4) = 9 |
| π | Число пи | ≈ 3,14159265 |
| e | Число Эйлера | ≈ 2,71828183 |
| φ | Золотое сечение | ≈ 1,61803399 |
Каталог продукции УРТ
Производство и поставка РТИ, пластиков, уплотнений и приводных ремней. Отгрузка со склада в Екатеринбурге.
Зачем инженеру онлайн-калькулятор
Технический специалист в промышленности ежедневно сталкивается с расчётами, которые встроенный Windows-калькулятор делать умеет, но неудобно. Нужно посчитать площадь уплотнительного кольца — `π·(D²−d²)/4`. Проверить коэффициент теплового расширения — `α·L·ΔT`. Оценить сложный процент при начислении на оборудование — `P·(1+r)ⁿ`. Привести десятичный логарифм к натуральному через коэффициент `ln(10) ≈ 2,3026`. Все эти операции требуют функций, которых на обычной клавиатуре нет: `sin`, `cos`, `log`, `√`, факториал, возведение в произвольную степень. Именно поэтому мы сделали собственный инженерный калькулятор: с полным набором функций, памятью, историей вычислений, режимами углов (градусы/радианы/грады) и клавиатурным управлением.
Калькулятор написан на чистом JavaScript без внешних библиотек и без небезопасной функции `eval()`. В основе математического ядра — классический алгоритм сортировочной станции Эдсгера Дейкстры, преобразующий введённое выражение в обратную польскую запись (RPN), которую стек-машина вычисляет линейно. Это даёт два практических преимущества: правильное соблюдение приоритета операций (`2+3×4 = 14`, а не `20`) и полная безопасность — никакой код не выполняется через eval, никаких уязвимостей внедрения. Историю вычислений калькулятор сохраняет в вашем браузере (localStorage), так что при следующем визите вы увидите свои предыдущие расчёты и сможете восстановить любое выражение одним кликом.
Как устроено математическое ядро
Когда вы вводите выражение вроде sin(30) + 2·π × 5, внутри калькулятора происходит три последовательных этапа обработки:
1. Токенизация. Строка разбивается на логические единицы-токены: числа (30, 2, 5), функции (sin), константы (π), операторы (+, ×), скобки. На этом же этапе решается тонкий вопрос: является ли минус унарным (перед числом) или бинарным (между двумя числами). Автоматически вставляется неявное умножение: 2π превращается в 2×π, 2(3+4) — в 2×(3+4), 3sin(45) — в 3×sin(45). Это критически важно для инженерной записи, где лишние знаки умножения визуально загромождают формулы.
2. Преобразование в обратную польскую запись (RPN). Это и есть тот самый алгоритм сортировочной станции. На вход — линейный список токенов, на выход — тот же список, но переставленный так, что операнды стоят перед операторами. Выражение 2 + 3 × 4 превращается в 2 3 4 × +. Теперь нет никаких приоритетов и скобок — всё уже упорядочено. Этот трюк Дейкстра описал в 1961 году для работы ALGOL-компиляторов, и он остаётся лучшим способом парсинга арифметических выражений по сей день.
3. Вычисление RPN на стеке. Стек-машина проходит по постфиксному выражению слева направо: число — в стек, оператор — достаёт из стека нужное количество операндов, применяет операцию, результат кладёт обратно в стек. Для `2 3 4 × +` это выглядит так: стек `[2]`, `[2, 3]`, `[2, 3, 4]`, после `×` → `[2, 12]`, после `+` → `[14]`. В конце в стеке должно остаться ровно одно число — это и есть ответ.
Особое внимание — точность чисел с плавающей точкой. В JavaScript, как и в большинстве языков со стандартом IEEE 754, прямое сложение `0.1 + 0.2` даёт `0.30000000000000004` — известный «мусор» из-за двоичного представления десятичных дробей. Наш калькулятор перехватывает этот артефакт: результат округляется до 12 значащих цифр через `toPrecision(12)`, что убирает все хвостовые нули и шумовые биты. Проверьте сами: введите `0.1 + 0.2` — получите ровно `0,3` без приписок.
Функции, константы и операторы
Калькулятор поддерживает все функции, которые есть на классическом инженерном калькуляторе типа Casio fx-82 или HP 35s:
| Категория | Функции | Применение |
|---|---|---|
| Тригонометрические | sin, cos, tan | Работают в режиме DEG/RAD/GRAD (переключатель в шапке дисплея) |
| Обратные тригонометрические | asin, acos, atan | Включаются кнопкой «2nd» — те же кнопки в инверсном режиме |
| Гиперболические | sinh, cosh, tanh, asinh, acosh, atanh | Теплофизика, инженерия связи, численные методы |
| Логарифмы | ln (по e), lg (по 10), log(base, x) | Пересчёт децибелов, биохимия, финансы |
| Степени и корни | x², x³, √, ∛, x^y, exp, 10^ | Геометрия, сопромат, статистика |
| Специальные | n!, 1/x, |x|, mod, gcd, lcm, round, floor, ceil | Дискретная математика, алгоритмы |
| Аггрегаты | min(a,b,...), max(a,b,...), rnd (случайное) | Статистика, моделирование |
| Константы | π, e, φ | Математические константы с 15-значной точностью |
Операторы поддерживаются в их классическом математическом приоритете по убыванию: скобки ( ) → факториал ! → унарный минус → возведение в степень ^ (правоассоциативное) → умножение ×, деление ÷, остаток mod, процент % → сложение +, вычитание −. Таким образом, 2+3×4 = 14, а не 20. А 2^3^2 = 2^9 = 512, а не (2^3)^2 = 64 — правоассоциативность степени соответствует математической традиции.
Режимы углов: DEG / RAD / GRAD
Это главная тонкость инженерной тригонометрии, на которой ошибаются даже опытные инженеры. Математические библиотеки любого языка программирования (включая JavaScript) принимают углы в радианах: `Math.sin(30)` в JS даёт не 0.5, а приблизительно −0.988 — потому что 30 радиан это около 5 полных оборотов. Чтобы получить привычное `sin(30°) = 0.5`, нужно либо вводить 0.5236 (π/6), либо заранее конвертировать градусы в радианы по формуле `радианы = градусы × π/180`.
Наш калькулятор делает это автоматически: при выбранном режиме DEG (градусы, по умолчанию) — sin, cos, tan принимают число как градусы и конвертируют внутри. При режиме RAD (радианы) — принимают как радианы. При GRAD (грады, 400-градусная шкала) — как грады. Обратные функции (asin, acos, atan) возвращают результат в выбранном режиме. Переключатель находится в верхней панели дисплея — слева от индикатора памяти.
| Выражение | DEG | RAD | GRAD |
|---|---|---|---|
| sin(30) | 0,5 | −0,988 | 0,454 |
| sin(π/2) | ≈ 0,027 (здесь π — это число 3.14..., а не 180°) | 1 | ≈ 0,031 |
| cos(0) | 1 | 1 | 1 |
| tan(45) | 1 | 1,62 | 1,376 |
| asin(0,5) | 30 | 0,5236 | 33,33 |
Выбирайте режим, подходящий вашей задаче: для гражданских инженерных расчётов (углы в ТЗ) — DEG, для математических выкладок и физических формул (где π = 180°) — RAD, для геодезии и картографии (где прямой угол = 100 градов) — GRAD. После смены режима все функции сразу пересчитывают живой превью — видно, как меняется результат.
Память и переменная Ans
Для многошаговых расчётов калькулятор предлагает два механизма хранения промежуточных значений. Регистр памяти управляется четырьмя кнопками: M+ добавляет текущий результат к содержимому памяти, M− вычитает, MR вставляет значение памяти в выражение, MC очищает память. Значение памяти отображается в верхнем правом углу дисплея; если память пуста — надпись «пусто» приглушённым шрифтом. Типичный сценарий: нужно посчитать площадь резиновой прокладки сложной формы как сумму трёх частей. Считаете первую часть, жмёте M+. Считаете вторую, жмёте M+. Считаете третью, жмёте M+. Жмёте MR — получаете общую площадь.
Переменная Ans (от англ. Answer) автоматически хранит последний результат. После любого вычисления кнопка «Ans» вставит в новое выражение предыдущий ответ. Это удобно для цепочек, когда результат одной формулы становится входом другой. Например: вы посчитали площадь S = π·r² = 78.54 мм². Теперь хотите рассчитать объём цилиндра V = S × h. Не переписываете 78.54 вручную — жмёте Ans, затем × 10 (высота). Получаете 785.4 мм³.
История и клавиатурный ввод
Все ваши вычисления сохраняются в панели справа от калькулятора. Панель хранит последние 12 расчётов в виде «выражение = результат». Клик по любой записи восстанавливает её выражение в дисплей — удобно для проверки расчёта с другими параметрами или как источник идей для похожих задач. История сохраняется в localStorage браузера: закрыли вкладку, вернулись через неделю — история на месте. Кнопка «Очистить» удаляет всю историю (используйте, если работаете на общем компьютере и не хотите оставлять следы).
Для быстрого ввода поддерживается клавиатура: цифры 0–9, операторы + − * / (на экране отображаются как × ÷), скобки ( ), точка, запятая (для многоаргументных функций вроде log(base,x)), ^ для степени, % для процентов. Enter эквивалентно кнопке `=`, Backspace удаляет последний введённый символ или сокращает число посимвольно, Escape или Delete делает полный сброс. Кликните на область калькулятора, чтобы активировать клавиатурный ввод, и можете считать вообще без мыши.
Частые вопросы
π·(D²−d²)/4, объём прокладки через толщину, изменение размера при тепловом расширении α·L·ΔT, коэффициент запаса по давлению, пересчёт диаметров в миллиметрах и дюймах. Если нужны более специализированные расчёты (подбор тормозной ленты, подшипникового зазора, толщины виброковрика) — на нашем сайте есть отдельные калькуляторы-подборщики с готовыми базами ГОСТ и справочными данными по материалам.🔥 Нужна помощь с расчётом?
Получите лучшую цену за 15 минут