Free algebra calculator with steps: simplify linear expressions, solve linear and quadratic equations, solve two-equation systems, and find the slope through two points. Choose a mode below. Exact forms, special cases and worked examples help you understand the answer.
Calculate your algebra problem
Choose a mode, enter your problem and calculate. Read the steps below the result, then check the original equation.
Enter the system in standard form: a₁x + b₁y = c₁ and a₂x + b₂y = c₂.
Choose the right algebra mode
Simplifying rewrites an expression without changing its value. Solving finds the value or values that make an equation true. An expression such as 5x + 2 has no single numerical answer until you choose x; an equation such as 5x + 2 = 17 asks which x works.
Simplify
Collect linear x-terms and constants. Try 3x + 2x − 5 + 7 → 5x + 2.
Linear equation
Find x with variables on one or both sides. Try 4x − 3 = 2x + 9 → x = 6.
Quadratic
Enter a, b and c for ax² + bx + c = 0. Include negative signs and a zero for any missing term.
2×2 system
Find an ordered pair satisfying two equations together. Enter coefficients in the same x, y, constant order.
Slope
Enter two points to find the line through them. Two identical points do not determine a unique line.
For a longer sequence of written exercises, use the algebra worksheet library. Work a problem on paper first, then compare the calculator’s method and check.
How to enter and check a problem
- Choose a mode. Match the mathematical task, rather than putting every problem in the first box.
- Copy signs and grouping carefully. In −5x, the coefficient is −5. In 2(x + 3), the multiplier applies to both terms.
- Calculate and read the classification. “No solution” and “infinitely many solutions” can both be correct mathematical conclusions.
- Substitute the answer into the original problem. An equation’s left and right sides should match; a system’s pair must satisfy both equations.
In the linear modes, use x, +, −, *, / and parentheses. Forms such as 2x, 2(x + 1), x/2 and (1/2)*x are supported. Multiplication and division are evaluated left to right, so 1/2x means (1/2)*x here; 1/(2*x) would mean something different and is not supported. Use x/2 or (1/2)*x to make a linear half-x term clear. Products of variable terms, powers and variable denominators are not supported. Use x + (−2) rather than consecutive signs. Number fields accept decimals or scientific notation, not fraction strings, units or commas; an empty field is not zero. Each number is limited to 60 digits (including zeros), a scientific exponent from −100 to 100, and 90 characters. Each expression side allows up to 500 characters, 200 tokens and 20 nested parentheses. Very large intermediate calculations are rejected with a message.
Exact fractions are retained when possible. For example, solving 3x = 1 gives x = 1/3; the decimal 0.3333 is only an approximation. The quadratic decimal selector controls the displayed approximation, not the exact discriminant or exact expression. Keep the exact form until your final line if a question asks for rounding.
The interactive calculation needs JavaScript and a browser with BigInt support. The reference, worked examples and practice answers below remain readable without running the calculator. This is a focused school-algebra tool, not a general symbolic algebra system.
Formula reference, with the conditions that matter
Like terms and brackets
ax + bx = (a + b)x
a(b + c) = ab + ac
Only like variable parts combine under addition: 3x + 2x = 5x, but 3x + 2 remains unchanged.
Linear equations
ax + b = c → x = (c − b)/a, when a ≠ 0
ax + b = cx + d → x = (d − b)/(a − c), when a ≠ c
If the variable coefficient cancels, compare the remaining constants instead of dividing by zero.
Quadratic equations
ax² + bx + c = 0, a ≠ 0
Δ = b² − 4ac
x = (−b ± √Δ)/(2a)
The whole numerator is divided by 2a. The ± sign gives the two branches of the formula.
Two linear equations
a₁x + b₁y = c₁
a₂x + b₂y = c₂
D = a₁b₂ − a₂b₁
x = (c₁b₂ − c₂b₁)/D
y = (a₁c₂ − a₂c₁)/D
These quotient formulas apply only when D ≠ 0. When D = 0, inspect whether the equations are consistent.
Slope and intercept
m = (y₂ − y₁)/(x₂ − x₁), when x₂ ≠ x₁
b = y₁ − mx₁
y = mx + b
Here b means the y-intercept; it is unrelated to a quadratic’s b coefficient. If symbols are unfamiliar, see our math symbols reference.
Simplify by keeping each sign with its term
In 7x − 4 + 2x + 9, the x coefficients are 7 and 2; the constants are −4 and 9. Combine the groups separately: (7 + 2)x + (−4 + 9) = 9x + 5. You have rewritten the expression, not solved for x.
Brackets need distributing before collecting terms. For 3(x − 2) + 2x + 1, multiply both terms inside the brackets by 3: 3x − 6 + 2x + 1 = 5x − 5. A negative multiplier changes both signs: −2(x − 4) = −2x + 8.
As a quick error check, choose a value of x. At x = 2, both 3(x − 2) + 2x + 1 and 5x − 5 equal 5. One successful substitution is a useful check, though the distributive and combining-like-terms steps are what establish equivalence for every x. Our expanded-form guide also explains distributing products.
Linear equations: one, none or infinitely many solutions
Use operations that preserve equality: add or subtract the same expression on both sides, or multiply or divide both sides by the same nonzero number. “Move it across and change the sign” is shorthand for doing one of these operations, not a separate rule.

For ax + b = cx + d, collecting terms gives (a − c)x = d − b. There are three cases:
- a − c ≠ 0: divide to find one solution.
- a − c = 0 and d − b = 0: the equation reduces to 0 = 0, so every real x works.
- a − c = 0 and d − b ≠ 0: it reduces to a false statement, so there is no solution.
For example, 2(x + 3) = 2x + 6 is true for all x. Changing the right side to 2x + 7 gives 6 = 7, so no x works. Never report x = 0 merely because the x-terms disappear.
Quadratics: read the discriminant before rounding
First put the equation in the form ax² + bx + c = 0. To solve x² = 5x − 6, enter a = 1, b = −5 and c = 6. Entering +5 for b would solve a different equation.
- Δ > 0: two distinct real roots.
- Δ = 0: one distinct real root, repeated twice.
- Δ < 0: no real roots; there are two non-real complex conjugate roots for real coefficients.
If Δ is positive but very small, the roots are still distinct even when rounded displays look alike. The calculator determines the sign from exact decimal inputs before showing approximations. It does not turn a small nonzero discriminant into zero.
Factoring can be the shortest method: x² − 5x + 6 = (x − 2)(x − 3), so x = 2 or x = 3. When factors are not convenient, the quadratic formula works. For a = 0, the equation is no longer quadratic; its remaining linear or constant equation must be treated separately.
The complex unit i satisfies i² = −1. For x² + 4 = 0, x = ±2i because (2i)² + 4 = −4 + 4 = 0. If your course asks only for real solutions, write “no real solution” rather than discarding the distinction.
Simultaneous equations: the same pair must satisfy both
The system x + y = 5 and x − y = 1 can be solved by addition. Adding the equations cancels y, giving 2x = 6 and x = 3. Substitute into x + y = 5 to get y = 2. The solution is the ordered pair (3, 2).

The calculator also shows determinants. A nonzero D gives one intersection. If D = 0, do not stop at “no unique solution”: distinguish no solution from infinitely many solutions.
- x + y = 5 and 2x + 2y = 10 describe the same line, so every point on that line works.
- x + y = 5 and 2x + 2y = 12 describe distinct parallel lines, so no point works.
- 0x + 0y = 1 is always false, so a system containing it has no solution.
- 0x + 0y = 0 is always true and adds no restriction. Paired with x + y = 5, it leaves all points on that line; paired with another 0 = 0, every real pair works.
That last distinction matters: a row of zero variable coefficients does not always represent a line. The calculator checks these degenerate cases explicitly.
Slope: distinguish horizontal, vertical and identical points
Through (1, 2) and (5, 10), the change in y is 8 and the change in x is 4. Therefore m = 8/4 = 2. Using the first point, b = 2 − 2(1) = 0, so the line is y = 2x.
Keep the point order consistent in the numerator and denominator. Reversing both gives (2 − 10)/(1 − 5) = (−8)/(−4) = 2; reversing only one creates the wrong sign.
- Different x, equal y: the line is horizontal, m = 0. Through (−2, 4) and (3, 4), its equation is y = 4.
- Equal x, different y: the line is vertical and slope is undefined. Through (3, 1) and (3, 7), its equation is x = 3.
- Both coordinates equal: the two entries are the same point. Infinitely many lines pass through one point; there is no unique line or slope to report.
When coordinates carry units, slope has vertical units per horizontal unit. A change of 12 metres over 3 seconds has slope 4 metres per second. Numerical coordinate values alone do not tell the calculator what units you intended.
Worked examples: setup, method, check
1. Simplify with a negative bracket
4x − 2(x − 3) + 5
= 4x − 2x + 6 + 5
= 2x + 11
Distribute −2 to x and −3. Check at x = 4: the original gives 16 − 2 + 5 = 19, and the simplified form gives 8 + 11 = 19.
2. Solve an equation containing decimals
0.3x + 0.2 = 1.1
0.3x = 0.9
x = 3
Subtract 0.2 from both sides, then divide by 0.3. Check: 0.3(3) + 0.2 = 0.9 + 0.2 = 1.1. You can also multiply the original equation by 10 first to get 3x + 2 = 11.
3. Keep a fractional answer exact
3x + 2 = 7
3x = 5
x = 5/3
Check: 3(5/3) + 2 = 5 + 2 = 7. To four decimal places, x ≈ 1.6667. Writing x = 1.6667 as an exact equality would lose the repeating part.
4. Solve a quadratic by coefficients
For 2x² + 3x − 2 = 0, use a = 2, b = 3, c = −2.
Δ = 3² − 4(2)(−2) = 25
x = (−3 ± 5)/4
x = 1/2 or x = −2
Checks: 2(1/2)² + 3(1/2) − 2 = 1/2 + 3/2 − 2 = 0; and 2(−2)² + 3(−2) − 2 = 8 − 6 − 2 = 0.
5. Recognize a repeated root
x² − 6x + 9 = 0
Δ = (−6)² − 4(1)(9) = 0
x = 6/2 = 3
The factorization (x − 3)² = 0 confirms the same root occurs twice. There is one distinct solution.
6. Solve the calculator’s default system
2x + 3y = 13
x − y = 1
The second equation gives x = y + 1. Substitute into the first: 2(y + 1) + 3y = 13, so 5y = 11 and y = 11/5. Then x = 16/5. Check: 2(16/5) + 3(11/5) = 65/5 = 13, and 16/5 − 11/5 = 1.
7. Find a decreasing line
Use the points (−1, 5) and (3, −3).
m = (−3 − 5)/(3 − (−1)) = −8/4 = −2
b = 5 − (−2)(−1) = 3
y = −2x + 3
Check the second point: −2(3) + 3 = −3. The negative slope means y decreases by 2 when x increases by 1.
Try these 12 problems, then open the answers
Write a method and a check before opening each answer. If you need more exam-style questions, continue with the GCSE algebra worksheets.
1. Simplify 6x − 4 + x + 9
7x + 5. Add the coefficients 6 + 1 and the constants −4 + 9.
2. Simplify −3(x − 2) + 5x
2x + 6. Distribute first: −3x + 6 + 5x. The product of −3 and −2 is +6.
3. Solve 5x − 8 = 17
x = 5. Add 8 to get 5x = 25, then divide by 5. Check: 25 − 8 = 17.
4. Solve 7x + 2 = 3x − 10
x = −3. Subtract 3x and 2 to get 4x = −12. Both original sides then equal −19.
5. Solve 2(x + 4) = 2x + 8
Every real x. Both sides simplify to 2x + 8. The equation is an identity.
6. Solve 2x + 4 = 2x + 5
No solution. Subtracting 2x gives the false statement 4 = 5.
7. Solve x² − 7x + 12 = 0
x = 3 or x = 4. Factor as (x − 3)(x − 4) = 0. Either factor may be zero.
8. Solve x² + 2x + 1 = 0
x = −1, a repeated root. The left side is (x + 1)², and the discriminant is 4 − 4 = 0.
9. Solve x² + 9 = 0
No real roots; x = ±3i over the complex numbers. Here Δ = −36, and (±3i)² = −9.
10. Solve x + y = 9 and x − y = 3
(x, y) = (6, 3). Add to get 2x = 12, then substitute. Checks: 6 + 3 = 9 and 6 − 3 = 3.
11. Find the line through (0, −2) and (4, 6)
m = 2; y = 2x − 2. The slope is 8/4. The first point directly supplies the y-intercept −2.
12. Find the line through (−2, 1) and (−2, 5)
x = −2, with undefined slope. The points are distinct but their x-coordinates are equal. This is a vertical line, not y = −2.
Common mistakes and a better check
- Combining unlike terms: 2x + 3 is not 5x. At x = 2 they give 7 and 10.
- Distributing to only one term: 2(x + 3) is 2x + 6. Multiply every term inside the brackets.
- Dropping the negative sign: in x² − 5x + 6, b = −5. Put a negative value in parentheses when squaring it.
- Dividing by an expression that might be zero: check the coefficient before dividing. Cancelling all variable terms signals a special case.
- Forgetting the second quadratic root: keep both + and − branches unless they give the same repeated root.
- Rounding too early: use exact fractions or radicals during the method, then round the final answer as requested.
- Checking only one system equation: a pair on one line may miss the other. Substitute into both.
Algebra calculator FAQs
Does it show steps?
Yes. Each mode gives the setup, intermediate quantities and a result. Linear and system solutions include exact substitution checks. For practice, compare these with your own written method.
Can I enter brackets and fractions?
Yes, in the linear expression and equation boxes: use 2(x + 3), x/2 or (1/2)*x. Division is allowed only by a nonzero constant expression. The separate quadratic, system and slope number fields take decimal or scientific numbers; use 0.5 there instead of 1/2. Write signed terms inside parentheses when needed, such as x + (−2).
Why is the answer a fraction instead of a decimal?
A fraction such as 5/3 preserves the exact value. A finite decimal approximation is useful when rounding is requested, but it should be marked with ≈ unless it is exactly equal.
Can this factor any polynomial or solve inequalities?
No. The expression modes work with supported linear expressions in x. Use the quadratic coefficient mode for quadratic equations. General polynomial factorization, inequalities, trigonometric functions and calculus are outside this tool’s scope.
Does “undefined slope” mean no line exists?
No. Two distinct points with the same x-coordinate determine a vertical line, written x = a constant. Identical points are a different case: there is no unique line through just one point.
Can the calculator be used in an exam?
Follow your examination rules and your teacher’s instructions. A calculator that is useful for checking homework is not automatically permitted in an assessment.
Sources & References
The explanations, examples, practice questions and diagrams on this page were prepared for HeLovesMath. The following textbook sections support the underlying methods and definitions.
- OpenStax Elementary Algebra 2e: properties of real numbers and distributing
- OpenStax Elementary Algebra 2e: solving linear equations, identities and contradictions
- OpenStax Intermediate Algebra 2e: quadratic formula and discriminant
- OpenStax College Algebra 2e: Cramer’s rule
- OpenStax College Algebra 2e: consistent systems and zero rows
- OpenStax Intermediate Algebra 2e: slope of a line
- OpenStax Calculus Volume 3: two distinct points determine a unique line



