Resources For Teachers For Tutors For Students & Parents Pricing
Year 3 Maths Subtraction

Subtract across zeros

20 practice questions 0 video lessons Theory + worked examples
Create a free accountTrack your progress and save your work as you go.
Create free account

Theory

Subtracting across zeros is a Year 3 maths skill for take-aways like \(500 - 137\) and \(1000 - 382\). When the ones are too small and the tens are zero, you change one hundred into 10 tens, then one ten into 10 ones, so an empty column can lend. This page shows the column method, the exchange facts, and how to count up on a number line. Curriculum: VC2M3N04 / AC9M3N03.

When you subtract in columns, you sometimes need to regroup (also called borrowing). You take one from the next column so a small digit has enough to subtract from. Subtracting across zeros happens when that next column is a zero and has nothing to lend.

The fix is to move down one more place. Change one hundred into 10 tens first. Now the tens column is not empty, so change one ten into 10 ones. The one hundred trickles down through the zero until the ones have enough.

Take \(500 - 137\). The ones are \(0 - 7\), which cannot be done, and the tens are also \(0\). Change 1 hundred into 10 tens (the 5 hundreds become 4), then 1 ten into 10 ones (the tens become 9). Now subtract each column: the answer is \(363\).

Column subtraction 500 minus 137 with regrouping The number 500 above 137. One hundred is changed into 10 tens, so the 5 becomes 4 and the tens become 9, then one ten becomes 10 ones. The answer written below is 363. 4 9 1 500 − 137 363
Regroup across the zeros: 5 hundreds become 4, tens become 9, so \(500 - 137 = 363\).
Exchange facts: one hundred equals 10 tens and one ten equals 10 ones A hundred flat equals 10 ten-rods, and one ten-rod equals 10 unit cubes. These are the exchanges used when subtracting across zeros. = = 10 tens 1 hundred = = 10 ones 1 ten
The exchanges behind the method: 1 hundred is 10 tens, and 1 ten is 10 ones.

Subtracting across zeros has no formula, but these exchange facts are what you use every time you regroup.

\[ 1 \text{ hundred} = 10 \text{ tens} \]
1 hundred =10 tens
\[ 1 \text{ ten} = 10 \text{ ones} \]
1 ten =10 ones
\[ 1 \text{ hundred} = 100 \text{ ones} \]
1 hundred =100 ones
\[ 500 - 137 = 363 \]
500−137=363
One hundred becomes 10 tens, not 10. This is the fact students most often get wrong. When you regroup a hundred, the tens column jumps up to \(10\), and then one of those tens can lend \(10\) ones.
The "one less" trick. \(399\) has no zeros, so \(399 - 158\) needs no regrouping: it is \(241\). Since \(400\) is \(1\) more than \(399\), \(400 - 158 = 241 + 1 = 242\). For numbers that are close, like \(800 - 796\), just count up.

How to subtract across zeros

  1. Line up the columns. Write the numbers with hundreds under hundreds, tens under tens and ones under ones. Look at the ones first.
  2. Regroup across the zeros. If the ones are too small and the tens are \(0\), change 1 hundred into 10 tens (the hundreds digit drops by 1), then change 1 ten into 10 ones (the tens become 9).
  3. Subtract each column. Take away the ones, then the tens, then the hundreds. If the numbers are close, you can count up on a number line instead.
Example 1 β€” Take a small number
Work out \(800 - 6\).
Solution
\(8\text{ hundreds}\)\(\to\)\(7,\ \text{tens}\to9,\ \text{ones}\to10\)
\(\text{ones}\)\(:\)\(10 - 6 = 4\)
\(800 - 6\)\(=\)\(794\)
800−6=794

Both zeros lend, so \(800 - 6 = 794\).

Example 2 β€” Column with a zero
Work out \(903 - 547\).
Solution
\(\text{ones }3 - 7\)\(:\)\(\text{regroup}\)
\(\text{hundreds}\)\(\to\)\(8,\ \text{tens}\to9\)
\(\text{ones}\)\(:\)\(13 - 7 = 6\)
\(\text{tens}\)\(:\)\(9 - 4 = 5\)
\(903 - 547\)\(=\)\(356\)
903−547=356

The hundreds are \(8 - 5 = 3\), so the answer is \(356\).

Example 3 β€” Count up on a line
Work out \(500 - 216\) by counting up from \(216\).
Number line counting up from 216 to 500 A number line with marks at 216, 300 and 500. A jump of plus 84 goes from 216 to 300, then a jump of plus 200 goes from 300 to 500. The difference is 284. 216300500 +84 +200
Solution
\(216 \to 300\)\(:\)\(+84\)
\(300 \to 500\)\(:\)\(+200\)
\(84 + 200\)\(=\)\(284\)
84+200=284

So \(500 - 216 = 284\).

Example 4 β€” Money left over
Mia has \(\$700\). She buys a bike for \(\$265\). How much money is left?
Solution
\(700 - 265\)\(:\)\(\text{regroup 1 hundred, 1 ten}\)
\(\text{ones}\)\(:\)\(10 - 5 = 5\)
\(\text{tens}\)\(:\)\(9 - 6 = 3\)
\(700 - 265\)\(=\)\(435\)
700−265=435

Mia has \(\$435\) left.

Common pitfalls

A hundred becomes 10 tens, not 10. Watch out for writing \(1\) in the tens column. One hundred is \(10\) tens, so the tens jump to \(10\) before you lend a ten to the ones.
Do not swap the digits to make it easier. In the ones, \(0 - 6\) is not \(6\). Taking the smaller digit from the larger skips the regrouping and gives a wrong answer.
Two places change. After regrouping, the hundreds digit drops by \(1\) and the tens end up as \(9\). Forgetting to reduce the hundreds is a common slip.

Frequently asked questions

How do you subtract across zeros?

When the ones are too small and the tens are \(0\), change 1 hundred into 10 tens first. Then change 1 ten into 10 ones. Now every column has something to lend, so you subtract the ones, then the tens, then the hundreds.

Why can't you borrow from a zero?

A zero in the tens column means there are no tens to lend. So you move down from the hundreds: one hundred becomes 10 tens, and then one of those tens can lend 10 ones.

Does one hundred become 10 or 10 tens when you regroup?

One hundred becomes 10 tens, not 10. One hundred equals \(100\), which is the same as 10 tens. That is why the tens column jumps to \(10\) before you lend a ten to the ones.

How do you work out 500 minus 137?

Change 1 hundred into 10 tens, so the \(5\) hundreds become \(4\). Then change 1 ten into 10 ones, so the tens become \(9\). Ones \(10 - 7 = 3\), tens \(9 - 3 = 6\), hundreds \(4 - 1 = 3\). So \(500 - 137 = 363\).

How do you subtract a number from 1000?

The easiest way is to count up. For \(1000 - 382\), jump from \(382\) to \(400\) (that is \(+18\)), then from \(400\) to \(1000\) (that is \(+600\)). Add the jumps: \(18 + 600 = 618\). This avoids regrouping across three zeros.

Is there an easier way than borrowing across zeros?

Yes. If the two numbers are close, count up on a number line. For \(800 - 796\) just count up \(+4\). You can also subtract from a number one less, like using \(499\) for \(500\), then add \(1\) back at the end.