C3. Coding

Solve problems and create computational representations of mathematical situations using coding concepts and skills.

Learning Situation: Hunting for Objects


Duration: 75 minutes

Summary

In this learning situation, the student moves a sprite through a forest using block programming software. The student also uses their knowledge of numerical facts so that moves of the sprite totals 10 .

This learning situation includes plugged-in coding activities, that is, coding that requires software, a platform, or a coding device. It is possible, however, to adapt the activities so that they are unplugged

Overall Expectations Specific Expectations
B2. Operations
Use knowledge of numbers and operations to solve mathematical problems encountered in everyday life.
B2.2 Recall and demonstrate addition facts for numbers up to 10, and related subtraction facts.
C3. Coding
Solve problems and create computational representations of mathematical situations using coding concepts and skills.

C3.1 Solve problems and create computational representations of mathematical situations by writing and executing code, including code that involves sequential events.

C3.2 Read and alter existing code, including code that involves sequential events, and describe how changes to the code affect the outcomes.

High-Impact Instructional Practices Description
Tools and Representations The use of representations of number facts is important in this learning context. Representation of 10 using a number line, a Rekenrek, a 10 frame, a number grid, and objects, such as tokens, is used so that the student can represent different moves that total 10. In addition, the student also knows the associated subtractions.
Math Conversations As soon as the situation begins, the conversation begins. As the adult introduces the students to the illustrations, they question each other and converse about their assumptions and ideas. Throughout the process, students explain their movements using blocks.

Prior Knowledge and Skills

  • Use equipment, such as a Rekenrek, a 10 frame or a number line.
  • Know the translation blocks and the starting blocks (possibly seen in unplugged coding).
Names of coding blocs. Blocs of coding with 4 blocks of movement: move right one time, move up one time, move left one time, and move down one time. Then start on green flag, starts on tap, starts on bump, start on message, send message.
­

Learning Goals, Success Criteria and Descriptive Feedback

In this learning situation, the learning goals and success criteria may be posted on a large sheet of paper for all to see. Students should be aware of the expected outcomes and how to access them. Throughout the lesson, the teacher circulates, observes, questions and comments on the students' work, providing descriptive feedback based on the learning goals and success criteria.

Possible Success Criteria based on the Achievement Chart
Skills Success Criteria
Knowledge and understanding
  • The student determines the sequential events of a code.
  • The student uses the facts of addition and subtraction for 10.
Thinking skills
  • The student modifies their code to make it more efficient or more original.
Communication
  • The student uses the appropriate vocabulary for coding (block, sprite).
  • The student clearly explains the blocks that are in their code.
Implementation
  • The student creates efficient code that makes their sprite move.
  • The student uses the variables in their blocks to make the sprite move.

Learning Goals

At the end of this learning situation, the student will be able to:

  • use addition and subtraction number facts to 10 to make moves;
  • create sequential event codes;
  • modify codes to make them effective sequential codes.

Materials

  • 10 frame
  • Rekenrek
  • number line
  • cubes or other object for counting
  • beaded line
  • two-coloured tokens
  • block programming software

Note: The examples in this learning situation were created using Scratch Jr.

Mathematical Vocabulary

number facts, sprite, code, block, sequential event

Situation

Duration: 15 minutes

Assessment can be carried out through…Evaluation infographic: Conversation, observations, productions.

Show students the illustrations below.

Questions To Ask

  • What do you see?
  • How many fingers do you need to add to get 10?
  • How many trees do you see?
  • How many trees do you need to add to get 10?

An illustration show 2 hands n illustration show 3 and 4 fingers, and 4 trees

Introduce students to manipulatives, such as the 10 frame, two-coloured tokens, a Rekenrek, and a number line.

Ask students to find different ways to represent 10.

Circulate among the students and observe what they are doing.

Possible Observation Possible Interventions
The student has difficulty representing 10. Suggest that the student use the two-coloured tokens and place them in the 10 frame.
  • How many blue tokens did you place?
  • How many red tokens did you place?
A grid table with ten squares with 4 blue circles and 6 red circles.
Remind the student that 10 can be represented with objects, operations, symbols and drawings.
Give the student an example for the number 5.
  • What do you see?
  • How do you know what it means?
A dice face 5, 5 blue circles, and a grid table with 8 yellow circles where the last 3 are crossed off.

Directions

Duration: 45 minutes

Assessment can be carried out through…Evaluation infographic: Conversation, observations, productions.

Show students the arrows below. Ask them to stand up and make the movements.

A line of 8 blue arrows pointing to the right.

Questions To Ask

  • How many steps did you take?
  • How many arrows do you need to add to make a total of 10 steps?
  • Look at the arrows below. How many moves to the left do you need to make to get a total of 8?
A line of ten blue arrows pointing to the right.

Have students create moves in block programming software. The sprite moves should represent the addition facts up to 10 or the associated subtraction facts.

Present the following code to the students.

A coding line: frog, move right 3 times, move up 2 times.

Questions To Ask

  • What will the frog do?
  • How many moves do you need to add so that she makes 10 moves in total?
  • What is missing in the code to make it work?

Guide the discussion and get students to come up with a functional code that involves 10 moves.

Possible Answer

Now here is the code for the frog to make 10 moves. Student suggests adding 1 up arrow, 3 right arrows and 1 down arrow. The addition of the start block and the stop block is also necessary for the code to work.

A coding line: frog, start on green flag, move right 3 times, move up 3 times, move right 3 times, move down one time, end.

Here is the position of the frog before the translations:

Image of a frog in its inital position before any movements.

Here is the position of the frog after the translations:

Image of the final position of the frog at the end of the movement.
  • Highlight sequential events in the code.
  • Ask students if there is a way to modify the code to make it more efficient. (In this context, "more efficient" could be interpreted as using fewer blocks to achieve the same goal.)

Here is an example of a more efficient code. Variables must be added below the blocks. The code remains a series of sequential events.

Coding line:
Frog, start on green flag, move right 3 times, moves up 3 times, moves right 3 times, moves down one time, end.
  • Have students create other movements of their frog in the forest using block programming software.
  • Tell students that the frog's movements should represent addition or subtraction of the number 10.

Possible Answers

The student can then add a green block a green block in which they dictate the answer; for example, the student says, "Nine plus one equals ten."

Coding line: 
Frog, start on green flag, moves right 9times, moves down on time, say ‘nine, plus one’, plays recorded sound, end.

The student puts the frog on the grid at 10. They create the code below so that the frog is at 4.

An image that demonstrations what happens on the screen when the coding is programmed with moving blocks.

Possible Observation Possible Interventions
The student is unable to get their code to work. Which block should you use to start your code?
Bloc of start on green flag.
The student uses multiple blocks rather than changing the variable in their block. What can you do to make your code more efficient? Do you notice any repetition in the blocks of your code?
5 blocks of move right one time versus a block of move right 5 times.
Student makes moves that do not add up to 10. How many times did the frog move upwards? Represent these using the Rekenrek balls. How many moves did the frog make to the right? Represent these using the Rekenrek marbles.
Coding line: Start on green flag, move up 3 times, move right 4 times, end.
Does the total of the frog's moves add up to 10 marbles, or a full row of the Rekenrek? If not, how many more marbles should you add?

Consolidation of Learning

Duration: 15 minutes

Assessment can be carried out through…Evaluation infographic: Conversation, observations, productions.

Ask students to present their code to the class. Invite other students to try them out.

Observe the codes with students and point out sequential events in the codes.

Review with students the blocks and their meaning.

Further Consolidation/Next Steps

Suggest that the students do a treasure hunt for objects using robots such as Bee-Bot, Sphero, Ozobot or others. If no robotic device is available, online interactive versions exist for several educational robots.

Connections with Other Mathematical Strands (Sequential Events)

Number

B2.2 Recall and demonstrate addition facts for numbers up to 10, and related subtraction facts.

Using a variety of combinations of moves that make 10, the student can move a sprite to specific locations. Subtraction can be represented by moving in the opposite direction (for example, 10 steps to the left and 4 steps to the right is a move of 6 steps, which is 10 - 4 = 6).

Algebra

C1.2 Create and translate patterns using movements, sounds, objects, shapes, letters, and numbers.

The student can create a repeating pattern using the blocks in the coding software, then share their code with a classmate so that they can determine the rule and extend the pattern core.

Data

D1.1 Sort sets of data about people or things according to one attribute, and describe rules used for sorting.

The student can have a collection of sprites on their screen and classify them according to their attributes using a pattern of translations so that each sprite has its designated place.

Spatial Sense

E1.5 Give and follow directions for moving from one location to another.

Using the vocabulary associated with block moves (left, right, up, down), the student creates a path for a sprite involving a pattern of moves.

Differentiated Instruction and Universal Design for Learning

  • Give students a copy of the blocks and ask them to solve the problem in unplugged coding.
  • Provide the student with a completed example so that they can build on it.
  • Have students use their 10 moves to get the sprite to reach various objects in the forest.
  • Suggest that the students add pages to their project in order to move their sprite from one page to another.