6.B.7. addition/subtraction in grades 3/4


These are some initial ideas for a Math + Coding project in Wellington Catholic DSB, with 8 Grades 3/4 teachers and SD leaders.

We are looking at integrating coding (and more generally, computational thinking) in math teaching and learning.

Being a first draft, what is below will be edited after we get some feedback, and then also edited after we try some of the ideas in classrooms.



2.A. How do you add in your head?

Here's an activity I have done sevaral times at math nights for parents:

  • I bring a variety of bills and coins, lay them on a desk, and ask for a parent volunteer to count it, touching the bills/coins as they add them
  • Try this yourself with the bills and coins below

Parents find the sum by starting with the large bills first, and adding the coins last

This is interesting because the are adding from the "left", not from the "right" as they learned in school.


Similarly, when I ask parents to add in their head something like 278 + 357, most of them add the hundreds first (200 + 300 = 500), then the tens (70 + 50 = 120), then the ones (8 + 7 = 15), and lastly all of these together (500 + 120 + 15 = 635).

One parent asked me: Are we allowed to do this? The she explained that she always added number like this in school but never told anyone so she wouldn't get in trouble.


The standard paper-and-pencil algorithm we learned in school is efficient, it works the same way all the time, and it gets the answer. But it's not the only method that works, and it's not always the best method to use - especially when adding mentally.





Add the following pairs of numbers using each of the addition methods below.

  1. 89 + 67
  2. 278 + 357








Here are some ways students may use coding in the context of addition.

3.A. An addition quiz

Here is an addition quiz written in Scratch. Try it.

  • type your answer in the text area
  • click the check mark (or press Enter) to check your answer



Here is what the code looks like.


See this code at the Scratch website: https://scratch.mit.edu/projects/95956741/#editor

One way to learn to code is by editing existing code.

Edit the code it does the following:

  • adds numbers in the range of 100-200
  • asks 5 questions instead of 10
  • gives a different response for incorrect answers
  • gives 5 points for every correct answer
  • takes away 3 points for every incorrect answer [HINT: click on the orange Data menu iten, and drag/drop/edit a "change score by 1" code block]


3.B. An addition tutor

Here is an addition tutor, for using the Expanded Notation strategy,written in Scratch.

Try it below or try it here: https://scratch.mit.edu/projects/123727346/#editor.


Here is what the code looks like.


See this code at the Scratch website: https://scratch.mit.edu/projects/123727346/#editor

One way to learn to code is by editing existing code.

Edit the code it does the following:

  • adds numbers in the range of 30-80 for the fist number and 10-50 for the second number


Edit the code to model the Partitioning method.


This would be quite challenging to do for younger students.

Perhaps they can engage with the following task:

  • How would what is shown on the screen change?
  • Use an example to illustrate



Here are some thoughts about what we have done so far:

  • It is important for students to see and use a variety of addition strategies
  • It is also important for them to enage witg inventing their own addition strategies
  • Being able to decompose numbers to make addition easier also helps them develop knowledge and skills for problem solving

It also important to recognize that what we have done so far is limited to simply adding two numbers. Although this is a necessary skill, students need to see how this connects to bigger math ideas.

Below we see how students can experience addition in new ways by integrating it with pattern and algebra.


4.A. Finding sums of growing patterns (odd, even and natural numbers)

See Adding Odd Numbers.

See Adding Even Numbers.

See Adding Natural Numbers.

See also the story Who's the Big Bad Wolf? (and instructional strategies below the story)


4.B. Coding extensions - with Python

Use the University of Waterloo Computer Science Circles website to write computer code using the computer programming language Python.

Natural Numbers

The code below prints the first 10 Natural numbers and their sum.


Even Numbers

The code below prints the first 10 even numbers and their sum.


Odd Numbers - version 1

The code below prints the first 10 odd numbers and their sum.


Odd Numbers - version 2

The code below prints the first 10 odd numbers and their sum using a different coding method.


4.C. Coding extensions - with Scratch

The Scratch simulation below graphs the first 10 Odd numbers. Give it a try.


The Scratch code for creating the bar graph of the first 10 Odd numbers looks like this.


Go to https://scratch.mit.edu/projects/123740785/#editor to edit the code to create bar graphs of:

  • the first 10 Even numbers
  • the first 10 Natural numbers



Here are some alternate methods for subtracting numbers.