Scientific Calculator
When the Built-In Calculator Won't Cut It
You're debugging a geometry algorithm and need the haversine between two cities. You're sanity-checking a compounding-interest formula. Your physics engine needs sin/cos in radians, not degrees. The default OS calculator is useless for this.
A scientific calculator handles transcendental functions, complex numbers, factorials -- the machinery behind real math. This tool wraps that with a computation tape so you can export your session.
The Function Set
Trigonometry: sin, cos, tan and inverses. Plus sinh, cosh, tanh. Deg/Rad toggle is critical.
Logs and exponents: ln(x), log10(x), log2(x), e^x, 10^x.
Complex numbers: 3+4i or 5 at angle 30 (polar). Results in both rectangular and polar form.
Factorial, nPr, nCr: Exact integer arithmetic up to n=170.
Degrees vs Radians: The Classic Bug
If sin(90) returns 0.8939 instead of 1, you forgot to check Deg/Rad mode.
Degrees: sin(90)=1, cos(0)=1. Radians: sin(pi/2)=1, cos(0)=1.
If your physics engine uses radians (most do), make sure the calculator matches. This is the #1 reason numeric tests fail.
The Computation Tape
Every expression and result is stored locally, survives page refreshes. Export as CSV or Markdown for code reviews. Search across your tape with Ctrl+F.
Practical Examples
Distance between coordinates. From (3,4) to (7,1): sqrt((7-3)^2 + (1-4)^2) = 5. Compound interest. 10000 * (1 + 0.05/12)^(1210) = $16,470.09. Law of cosines. Triangle a=5, b=7, angle C=60: sqrt(5^2 + 7^2 - 257cos(60)) = 6.245. Complex impedance. 100+50i = magnitude 111.8 ohms, phase 26.57 degrees. sin(pi) != 0. IEEE 754 residual: ~1.2e-16. Expected, not a bug.
Memory Workflow
Use M+ / MR / MC for multi-step derivations. Store a partial result, move on, recall it when needed.
Keyboard-First
Up/Down navigate expression history. Escape clears input. Enter evaluates. You never need to touch the mouse.
FAQ
Q: Why sin(pi) != 0? A: IEEE 754 can't store pi exactly. The ~1.2e-16 residual is machine epsilon. Q: Tape persistence? A: Stored in localStorage. Survives refresh. Q: Custom functions? A: Define with f(x) = x^2 + 1. Reusable in any expression. Q: Constants e and pi? A: Type e (2.718...) or pi (3.141...).