Number Base Converter
Convert between binary, octal, decimal and hex, including very large numbers.
An expression calculator with trigonometry, logarithms, powers and factorials.
Type a whole expression and evaluate it: trigonometry, logarithms, powers, factorials, percentages, parentheses, and implicit multiplication like 2π. Evaluation uses a hand-written recursive-descent parser rather than eval or new Function, so input is never executed as code.
Type a whole expression and press equals: trigonometry (sin, cos, tan), base-10 and natural logarithms, square roots, powers, factorials, percentages and arbitrary parentheses.
Implicit multiplication works: 2π, 3(4+1) and (1+2)(3+4) all multiply without inserting × yourself.
Evaluation uses a hand-written recursive-descent parser, not eval or new Function — input is never executed as code, and adding a CSP will not require unsafe-eval for this page.
Build the expression
Buttons append to the expression shown above the result.
Press equals
Invalid input shows Error instead of a plausible-looking wrong number.
Negate with ±
It prefixes the whole expression with a minus; press again to undo. It does not insert a minus at the cursor.
Unary minus binds looser than exponentiation, so -2^2 parses as -(2^2). Write (-2)^2 when you want 4.
Exponentiation is right-associative: 3^2 = 9 first, then 2^9 = 512, matching standard mathematical notation. Use (2^3)^2 for the other grouping.
Only non-negative integers from 0 to 170. From 171! the value exceeds double-precision range and shows as ∞, while non-integers like 1.5! are rejected.
Convert between binary, octal, decimal and hex, including very large numbers.
Work out your body mass index and what the range means.
Work out monthly repayments and total interest on a loan.
Work out percentages, ratios and growth rates.
Work out the tip, the total and each share from a bill amount.
Turn an original price and a discount percentage into the final price.
Get your exact age, total days lived and the days until your next birthday.
Convert amounts across 16 currencies using fixed reference rates.