Developing Maths
through Scratch
Phil Bagge
Computing Inspector/Advisor (Hampshire)
CAS Master Teacher
Teacher (Otterbourne Primary,
Calmore & Ringwood Junior Schools)
Author code-it.co.uk resources
Author How to teach Primary Programming using Scratch
Scratch Overview
• Programming Language Since 2007
• Two versions 1.4 & 2.0
– Pyonkee (iPad version of Scratch 1.4)
• Online & Offline
• User Community
• Used from Y3 to Undergraduate Study
• Block based rather than text based
• Limitations
Computational Thinking & Scratch
• Algorithms
• Algorithm Evaluation
• Decomposition
• Generalisation
• Abstraction
Example Question Algorithm
Think of a question
Think of the answer
Ask the question
Compare your answer with
users answer
If same award point
If different award no point
All programming is an algorithm turned into code.
Turning Algorithm into Code
Compare your
answer with users
Think of question
answer
Think of the answer
Ask the question
If same award point
If different award no point
All programming is an algorithm turned into code.
Generalisation
Adapting a solution that solved one problem to
solve another.
?
Examples of programming decomposition
Incidental Maths
• Angles (Smoking Car)
• Percentages
• Decimal Fractions (Music Machine)
• = Same as (Maths Quiz)
B A
Maths Related Projects
• Training Computer to do Maths
• Maths Quiz
• Counting Machine
• Coin Program
• Times Table Game
• Perimeter Program
• Angle Sorter
• Cartesian Coordinates Planning can be found here
• Clock http://code-it.co.uk/scratch/scratchplan
However latest version is here
http://www.amazon.co.uk/Teach-Primary-Programming-Using-Scratch/dp/1908684534
Counting Machine
Can you get the cat
to count?
Modelling a better solution
https://youtu.be/_26bc5twFRg
From
Algorithm to
Code
Which two blocks go
inside the repeat loop?
Counting Machine Challenges
• Can you count faster?
• Can you count in multiples of 7?
• Can you count backwards?
• Can you count in tenths or hundredths?
• Can you start from 30 and count down to 0?
• Can the user say how long they want the
countdown timer to last for?