Calculation History
No history yet
Most online calculators hide their working, so a wrong answer looks exactly like a right one. Many basic keypads also ignore operator precedence and return 20 for 2 + 3 × 4. Others print 0.30000000000000004 when you add 0.1 and 0.2. Those small slips turn into real mistakes in homework, invoices and budgets.
This math calculator evaluates the whole expression with correct precedence, exact decimals and full support for negative numbers. Switch on Show Steps to see every operation in the order it runs. It handles percentages, square roots and powers, and it works from your keyboard or the keypad. Everything runs in your browser, so nothing you type ever leaves your device.
No history yet
This type of calculator handles arithmetic: addition, subtraction, multiplication and division, plus percentages, square roots and powers. It sits between a four-function handheld calculator and a scientific calculator. You type a full expression such as (8 - 2) × 4 instead of pressing one operation at a time. The tool then evaluates it the way a math teacher would.
It is not an algebra solver. Tools such as Mathway and Symbolab solve equations like 2x + 3 = 11 and explain the algebra. This page focuses on numeric expressions and shows the arithmetic steps behind each answer. For trigonometry and logarithms, a scientific calculator is the right tool.
Enter an expression with the keypad or type it directly on your keyboard. Digits, the decimal point, the operators + - * / ^ % and parentheses all work from the keyboard. Press Enter or = to calculate, Backspace to delete one character and Escape to clear everything.
Your history stays in this browser between visits, and Clear History removes it. The Large display switch enlarges the result and the keys for easier reading. Both settings are stored only on your device.
The calculator reads the full expression before it computes anything. Parentheses come first, followed by percent signs, powers, square roots and negative signs. Multiplication and division then run from left to right, and addition and subtraction come last. So 2 + 3 × 4 gives 14, because 3 × 4 is worked out before the addition.
Many handheld calculators apply each key the moment you press the next one. On those devices 2 + 3 × 4 returns 20, because the running total of 5 is multiplied by 4. Only 14 follows the standard mathematical convention taught in schools. Show Steps makes the order visible, so you can see exactly why the result is 14.
The examples below cover everyday arithmetic, edge cases and the traps that catch other calculators. Each one shows the exact input, the result and what the answer means.
Type any of these inputs into the calculator above to check the result yourself. Turn on Show Steps to compare the trace with each explanation.
Enter 12.49 + 3.75 + 8.20 and the calculator returns 24.44. The decimals add exactly, with no stray digits at the end. That total is what you should see on the receipt.
Enter 45 - 60 to get -15. A negative result means you are 15 short. That is how an overdraft or a budget gap shows up.
Enter 10 - (-3) to get 13. Subtracting a negative number is the same as adding its size. A temperature rise from -3 °C to 10 °C is a change of 13 degrees.
Enter 2 + 3 * 4 to get 14. Show Steps lists the multiplication first and the addition second. A handheld calculator that works key by key would show 20 instead.
Enter (8 - (2 + 1)) * 4 to get 20. The inner bracket gives 3 and the outer bracket gives 5. Multiplying 5 by 4 gives 20, and all three steps appear in order.
Enter 0.1 + 0.2 to get 0.3. Many programs show 0.30000000000000004 here because of binary floating-point storage. This calculator uses decimal arithmetic, so the answer is exact.
Enter 7 / 3 to get 2.33333333333. The true value repeats forever, so the display rounds to 12 significant digits. That is precise enough for money, measurements and schoolwork.
Enter 99999999 * 99999999 to get 9999999800000001. Standard JavaScript returns 9999999800000000, which is wrong in the last digit. Whole numbers up to 21 digits display exactly here.
Enter 10^21 to get 1e+21, and 1 / 10^8 to get 1e-8. The letter e means times ten to the power shown. So 1e+21 is a one followed by 21 zeros.
Enter 80 + 8.25% to get 86.6. The calculator adds 8.25% of 80, which is 6.60, to the price. The same rule works for markups and service charges.
Enter 120 - 15% to get 102. The calculator subtracts 15% of 120, which is 18. That is the price you pay after a 15% discount.
Enter 64 * 18% to get 11.52. Here the percent sign simply means divide by 100, so 18% becomes 0.18. That is an 18% tip on a 64 dollar bill.
Enter √(9 + 16) to get 5. This is the diagonal of a rectangle 3 units wide and 4 units tall. The steps show the addition first and the square root second.
Enter 2^10 to get 1024. Binary storage units grow in powers of two, so one kibibyte holds 1024 bytes. The KB to MB converter explains how that affects file sizes.
Enter 4.99 / 12 to get 0.415833333333 per ounce for the small pack. Then enter 7.49 / 20 to get 0.3745 per ounce for the large pack. The large pack is cheaper by about 4 cents per ounce.
Enter (82 + 91 + 77 + 88) / 4 to get 84.5. The brackets make the calculator add all four scores before dividing. Without them, only 88 would be divided by 4.
Most programming languages store numbers in the IEEE 754 double-precision format. That format cannot represent 0.1 or 0.2 exactly, so their sum lands a tiny distance from 0.3. It also loses whole-number precision above 9,007,199,254,740,991. Both limits explain the odd results many calculators show.
This calculator avoids both problems by doing its arithmetic in decimal with the big.js library. If you build your own calculator, use a decimal library or BigInt for money and large integers. Round only at the end, when you format the result for display.
// Binary floating point (IEEE 754 double precision)
console.log(0.1 + 0.2); // 0.30000000000000004
console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991
console.log(99999999 * 99999999); // 9999999800000000 (wrong)
// Exact whole numbers with BigInt
console.log(99999999n * 99999999n); // 9999999800000001n
// Exact decimals with big.js
import Big from 'big.js';
console.log(new Big('0.1').plus('0.2').toString()); // "0.3"from decimal import Decimal
print(0.1 + 0.2) # 0.30000000000000004
print(Decimal("0.1") + Decimal("0.2")) # 0.3
print(99999999 * 99999999) # 9999999800000001 (Python ints are exact)Every calculation runs in your browser, and the page never sends what you type to a server. Your history and display setting are saved in this browser's local storage only. Clearing your history or your browser data removes them completely.
Accuracy comes from decimal arithmetic with 20 digits of internal precision. Results are rounded to 12 significant digits only when they are shown. Powers with fractional exponents, such as 2^0.5, are marked approximate because their exact value never ends. The Hash Generator and Encryption tool follow the same client-side approach.
An error message means the expression cannot produce a real number as written. The calculator never guesses what you meant, so a missing bracket stays an error. The table below lists each message, its cause and the fix.
Other calculators report these problems in less helpful ways. A handheld device may print Math ERROR or a single E. Some websites show NaN, Infinity or even 0 for 5 ÷ 0. Here each message names the actual problem, so you can fix it in one edit.
Message | Cause | Fix |
|---|---|---|
| Division by zero is undefined. | Dividing by 0, including 5 / (2 - 2) | Check the divisor |
| Missing closing parenthesis. | An opening bracket has no match | Add ) where the group ends |
| Unexpected closing parenthesis. | A ) with no matching ( | Remove it or add the opening bracket |
| Invalid expression. Check the numbers and operators. | A trailing operator, empty brackets or a number like 1.5.2 | Complete or correct the expression |
| The square root of a negative number is not a real number. | √ applied to a negative value | Check the sign inside the root |
| The exponent is too large to calculate. | A whole-number power above 10,000 | Use a smaller exponent |
| e+ or e- in a result | Not an error: scientific notation | Read 1e+21 as 1 × 10^21 |
Different calculators suit different jobs. A four-function handheld is fine for quick totals, but it often applies keys in the order you press them. A scientific calculator adds trigonometry and logarithms. An algebra solver finds unknowns and explains equations rather than numbers.
For everyday arithmetic you want to trust and understand, this math calculator is the practical middle ground. It keeps the speed of a basic calculator and adds the transparency of a step-by-step solver. Use the table below to pick the right tool for the job.
Feature | Four-function handheld | This calculator | Scientific calculator | Algebra solver |
|---|---|---|---|---|
| Follows operator precedence | Often no | Yes | Yes | Yes |
| Shows arithmetic steps | No | Yes | Rarely | Yes, for algebra |
| Exact 0.1 + 0.2 | Usually | Yes | Varies | Varies |
| Exact large whole numbers | No | Up to 21 digits | No | Varies |
| Negative numbers | ± key | Typed or ± key | Yes | Yes |
| Trigonometry and logarithms | No | No | Yes | Yes |
| Best for | Quick totals | Everyday arithmetic you want to check | Science and engineering | Algebra homework |
These answers cover the questions people ask most about calculators, steps and errors. They also explain the design choices behind the results you see above.
Each answer is short enough to read in a few seconds. For a worked walkthrough of any rule, see the examples section.