---
title: "How to Solve Simultaneous Equations: 3 Methods and Examples"
description: "Solve simultaneous equations by elimination, substitution and graphs, with worked examples, word problems and a Python checker."
slug: how-to-solve-simultaneous-equations
canonical: https://learn.modernagecoders.com/blog/how-to-solve-simultaneous-equations/
date: 2026-09-28
dateModified: 2026-09-28
category: "Mathematics"
tags: ["Algebra", "GCSE", "Equations", "Python"]
keywords: ["how to solve simultaneous equations", "simultaneous equations elimination method", "simultaneous equations substitution method", "simultaneous equations word problems", "simultaneous equations graphically", "systems of equations", "pair of linear equations in two variables"]
readTime: "8 min read"
author: "Modern Age Coders Team"
---
# How to Solve Simultaneous Equations: 3 Methods and Examples

> Elimination, substitution and graphs, step by step, plus the special cases, word problems and a small Python solver that checks every answer exactly.

![How to solve simultaneous equations: 3x + 2y = 16 and x minus y = 2 give x = 4 and y = 2](/images/blog/how-to-solve-simultaneous-equations/00-hero.png)

*By Modern Age Coders Team · 2026-09-28 · 8 min read*

**Quick answer:** Simultaneous equations share the same unknowns and must all be true at once; the solution is the point where their lines cross. Use elimination (multiply so one unknown matches, then add if the signs differ or subtract if they match), substitution (replace one unknown using the other equation), or a graph. Always substitute back for the second unknown and check in both equations. Parallel lines give no solution, and the same line twice gives infinitely many. For word problems, choose one letter per unknown and write one equation per clue.

Simultaneous equations are two (or more) equations that share the same unknowns and must all be true at the same time. You meet them in GCSE and IGCSE maths, in Class 9 and 10 in India (as pairs of linear equations in two variables), and in the US as "systems of equations". They are also one of the most useful tools in maths, because many real questions give you two clues about two unknown amounts.

This guide covers the three standard methods, elimination, substitution and graphs, with worked examples, the special cases where there is no answer or infinitely many, and how to turn a word problem into equations. A short Python solver checks every answer, including one with fractions.

## What are simultaneous equations?

On its own, the equation x − y = 2 has endless solutions: x = 3 and y = 1, x = 10 and y = 8, and so on. Add a second clue, 3x + 2y = 16, and only one pair of numbers fits both: x = 4 and y = 2. Solving simultaneous equations means finding that pair.

![Graph of 3x + 2y = 16 and x minus y = 2 crossing at the point 4, 2](/images/blog/how-to-solve-simultaneous-equations/01-graph.png)

*Every point on a line satisfies its equation. The crossing point satisfies both.*

The graph shows why. Each equation is a straight line of all the points that make it true. The solution is the one point on both lines, where they cross. That picture explains everything else in this guide, including why some pairs of equations have no solution at all.

## Method 1: elimination

Elimination is the most common method in exams. You add or subtract the equations so that one unknown disappears, leaving an easy equation in the other.

![Elimination steps: start with 3x + 2y = 16 and x minus y = 2, multiply the second by 2 to get 2x minus 2y = 4, add to get 5x = 20 so x = 4, then substitute back to get y = 2](/images/blog/how-to-solve-simultaneous-equations/02-elimination.png)

*Match the coefficients, then add or subtract.*

1. **Line up** the equations with x terms, y terms and numbers in columns: 3x + 2y = 16 and x − y = 2.
2. **Match one unknown.** The y terms are +2y and −y. Multiply the whole second equation by 2 to get 2x − 2y = 4. Now the y terms are +2y and −2y.
3. **Add or subtract to eliminate.** Opposite signs, so add: (3x + 2x) + (2y − 2y) = 16 + 4, which gives 5x = 20, so x = 4.
4. **Substitute back** into either original equation: 4 − y = 2, so y = 2.
5. **Check** in the other equation: 3 × 4 + 2 × 2 = 16. Correct.

> **Add or subtract?**

> Same signs, subtract. Different signs, add. If +2y and −2y, adding cancels them. If +2y and +2y, subtracting cancels them. When you subtract, subtract every term, including the numbers on the right, and take care with negatives. Our guide to [negative numbers](/blog/negative-numbers-explained) covers the sign rules if they cause trouble.

## Method 2: substitution

Substitution works best when one equation already says what one unknown equals. Take y = 2x + 1 and 3x + y = 11.

1. The first equation tells you y is the same as 2x + 1.
2. Replace y in the second equation with 2x + 1: 3x + (2x + 1) = 11.
3. Simplify and solve: 5x + 1 = 11, so 5x = 10, so x = 2.
4. Substitute back: y = 2 × 2 + 1 = 5.
5. Check: 3 × 2 + 5 = 11. Correct.

Substitution is also the method you need later, when one equation is not a straight line, for example a line and a curve such as y = x². Elimination cannot handle those, so it is worth being comfortable with both.

Substituting a line into a curve such as y = x² produces a quadratic equation, which may have two solutions, one or none. Our guide to [how to solve quadratic equations](/blog/how-to-solve-quadratic-equations) covers the three methods for finishing the job.

## Method 3: graphs

Draw both lines accurately and read off where they cross, as in the first figure. The graphical method is great for understanding, and it is quick when the answer is a pair of whole numbers. But it is only as accurate as your drawing, so when the answers are fractions it gives an estimate rather than an exact answer. That is when algebra wins.

## Checking with code, including fractions

Here is a small solver that uses Python's `Fraction` type, so answers come out as exact fractions rather than rounded decimals. It also spots the two special cases:

**solver.py**

```python
from fractions import Fraction

def solve(a1, b1, c1, a2, b2, c2):
    """Solve a1*x + b1*y = c1 and a2*x + b2*y = c2 exactly."""
    det = a1 * b2 - a2 * b1
    if det == 0:
        # parallel lines: either the same line, or they never meet
        same = a1 * c2 == a2 * c1 and b1 * c2 == b2 * c1
        return "infinitely many solutions" if same else "no solution"
    x = Fraction(c1 * b2 - c2 * b1, det)
    y = Fraction(a1 * c2 - a2 * c1, det)
    return f"x = {x}, y = {y}"

print(solve(3, 2, 16, 1, -1, 2))     # 3x + 2y = 16  and  x - y = 2
print(solve(2, 3, 7, 4, -3, 3))      # 2x + 3y = 7   and  4x - 3y = 3
print(solve(1, 1, 5, 2, 2, 12))      # x + y = 5     and  2x + 2y = 12
print(solve(1, 1, 5, 2, 2, 10))      # x + y = 5     and  2x + 2y = 10
```

**Output**

```text
x = 4, y = 2
x = 5/3, y = 11/9
no solution
infinitely many solutions
```

The first line confirms our worked example. The second pair, 2x + 3y = 7 and 4x − 3y = 3, has the answer x = 5/3, y = 11/9. Add the equations and the y terms cancel, giving 6x = 10, so x = 5/3. You can check it: 2 × 5/3 + 3 × 11/9 = 10/3 + 11/3 = 21/3 = 7. A graph could never give you 11/9 exactly.

## When there is no solution, or infinitely many

![Three cases for two straight lines: they cross once for one solution, they are parallel for no solution, or they are the same line for infinitely many solutions](/images/blog/how-to-solve-simultaneous-equations/03-cases.png)

*In the solver, det is zero exactly when the lines are parallel or identical.*

- **No solution:** x + y = 5 and 2x + 2y = 12. Halve the second and you get x + y = 6. Two numbers cannot add up to both 5 and 6, so the lines are parallel and never meet. In elimination, everything cancels and you are left with something false, such as 0 = 2.
- **Infinitely many solutions:** x + y = 5 and 2x + 2y = 10. The second is just the first doubled, so it is the same line, and every point on it works. In elimination, you are left with something always true, such as 0 = 0.

## Word problems: turning clues into equations

Most simultaneous equation questions in real life, and in exams, come as words. The skill is translating each clue into one equation. A classic puzzle: a farmyard has chickens and cows, with 30 heads and 74 legs altogether. How many of each?

![Word problem with 30 heads and 74 legs: let c be chickens and w cows, write c + w = 30 and 2c + 4w = 74, eliminate c to get 2w = 14, so 7 cows and 23 chickens](/images/blog/how-to-solve-simultaneous-equations/04-farm.png)

*One unknown per thing you are asked for, one equation per clue.*

Each animal has one head, so c + w = 30. Chickens have 2 legs and cows 4, so 2c + 4w = 74. Double the first equation to get 2c + 2w = 60, then subtract it from the second: 2w = 14, so w = 7 and c = 23. A quick brute-force check in code agrees, trying every possible number of chickens:

**farm.py**

```python
# 30 heads and 74 legs. How many chickens (2 legs) and cows (4 legs)?
for chickens in range(31):
    cows = 30 - chickens
    if 2 * chickens + 4 * cows == 74:
        print(f"{chickens} chickens and {cows} cows")
```

**Output**

```text
23 chickens and 7 cows
```

For more help turning words into maths, our guide to [solving maths word problems](/blog/how-to-solve-maths-word-problems) has a step-by-step method that works for simultaneous equations too.

## Common mistakes to avoid

- **Multiplying only part of an equation.** When you multiply by 2, multiply every term, including the number on the right.
- **Sign errors when subtracting.** Subtracting −2y means adding 2y. Write each step out rather than doing it in your head.
- **Stopping after one unknown.** Finding x is only half the answer. Substitute back to find y.
- **Not checking.** Put both values into the equation you did *not* use to substitute back. It takes ten seconds and catches most mistakes.

> Two unknowns need two clues. Each equation is a clue, and the answer is the only pair that satisfies both.

## How we teach it

Simultaneous equations are a good fit for two principles on our [how we teach](/how-we-teach) page. We show the same problem three ways until the aha lands, and here that means elimination, substitution and a graph of the same pair of equations. And students derive the rule themselves before they ever see it written down, such as when to add and when to subtract. Our [GCSE maths tuition](/gcse-maths-tuition-online) runs one to one or in small groups of 5 to 10.

[Book a free class](/book-demo) [Book a priority demo](/book-demo)

## Frequently asked questions

**How do you solve simultaneous equations?**

Use elimination, substitution or a graph. In elimination, multiply the equations so one unknown has matching coefficients, then add or subtract to remove it. In substitution, rearrange one equation for one unknown and substitute it into the other. Always check your answer in both equations.

**Which method is best for simultaneous equations?**

Elimination is usually quickest when both equations are in the form ax + by = c. Substitution is best when one equation already gives y = or x =, and it is the only method that works for a line and a curve. Graphs are best for understanding and estimates.

**When do you add and when do you subtract in elimination?**

If the matching terms have different signs, add the equations. If they have the same sign, subtract. The aim is always to make one unknown cancel out completely.

**Can simultaneous equations have no solution?**

Yes. If the two equations describe parallel lines, such as x + y = 5 and x + y = 6, the lines never meet and there is no solution. If they describe the same line, there are infinitely many solutions.

**What is the graphical method for simultaneous equations?**

Draw the straight line for each equation on the same axes. The solution is the coordinates of the point where the lines cross. It works well for whole-number answers but is less precise for fractions.

**Are simultaneous equations the same as systems of equations?**

Yes. In the UK and India they are usually called simultaneous equations or pairs of linear equations, and in the US they are called systems of equations. The methods are the same.

**What level are simultaneous equations?**

Linear simultaneous equations are taught at GCSE and IGCSE, in Class 10 in CBSE, and in Algebra 1 in the US. Harder versions with one linear and one quadratic equation appear at higher GCSE and beyond.

---

*Source: https://learn.modernagecoders.com/blog/how-to-solve-simultaneous-equations/*
