ONG / MTH / 01
Algebra Foundations
Fractions and negatives repaired, then equations.
Open the syllabusOntario · Grade 6 · math with coding
Grade 6 is a big year in Ontario math. Integers, percents, divisibility rules, four-quadrant graphs and probability all arrive, and the coding expectation adds a new word, efficient. The good news is that each one helps the other: a divisibility rule is easier to remember once you have written it as a test a computer runs. This page shows how, with a program we wrote and twelve practice questions of our own.
Live online classes since 2020 · 10,000+ students · Math and Python together
In short
Grade 6 math in Ontario covers number, algebra, data, spatial sense and financial literacy, and its coding expectation C3.1 asks students to write “efficient code” with conditional statements. Help works well when the two are taught together. Modern Age Coders does that live online, in a batch or one to one, through our Math Through Coding course.
Learn it with a teacher
One for the math itself, one that teaches the math through Python, and one for children who want more coding.

ONG / 01
For ages 10 to 15. Each unit is a math topic that the student turns into a working Python program, which is what Grade 6 C3.1 describes.
Open the syllabus →
ONG / 02
Arithmetic to pre-algebra, geometry and statistics, with problem-solving strategies taught by name.
Open the syllabus →
ONG / 03
Ages 9 to 12. A first text language: variables, loops, conditions, then turtle drawings and small games.
Open the syllabus →The Grade 6 curriculum
The 2020 curriculum organises Grade 6 into six strands. Strand A, social-emotional learning skills and the mathematical processes, runs through the other five. The table picks out the expectations that most often surprise families, with the curriculum’s own words in the middle column.
| Strand | In the curriculum’s words | Where coding helps (ours) |
|---|---|---|
| B. Number | Divisibility rules “to determine whether numbers are divisible by 2, 3, 4, 5, 6, 8, 9, and 10”; percents “including 1%, 5%, 10%, 15%, 25%, and 50%”; prime factors “including through the use of factor trees” | Each rule becomes an if test; the program checks the rule against real division |
| B. Number | “read and represent integers”; rounding decimals “to the nearest tenth, hundredth, or whole number”; “add and subtract fractions with like and unlike denominators” | Printing a number line of integers; comparing a rounded value with the original |
| C. Algebra | “specify which growing patterns are linear”; “solve inequalities that involve two operations and whole numbers up to 100” | A loop that generates a pattern; a loop that tries values until an inequality fails |
| D. Data | “determine the range as a measure of spread”; “determine and compare the theoretical and experimental probabilities of two independent events happening” | Simulating two dice a thousand times and comparing with the fraction worked on paper |
| E. Spatial Sense | “plot and read coordinates in all four quadrants of a Cartesian plane”; “determine the areas of trapezoids, rhombuses, kites, and composite polygons” | Moving a sprite by translations and printing its new coordinates |
| F. Financial Literacy | Methods of payment, financial goals, and interest rates and fees | Mostly discussion and planning; we teach it from the class materials |
Negative numbers trip up more Grade 6 students than anything else, because the rules that worked for whole numbers suddenly need a direction. Fractions with unlike denominators are a close second, usually because the idea of a common denominator was memorised in Grade 5 rather than understood.
Percents are the pleasant surprise. Once a child can find 10% by moving the decimal point, 5%, 15% and 25% follow quickly, and the curriculum asks for exactly that mental math.
The Grade 6 strands are not separate units in real life. A probability simulation (Data) needs fractions and percents (Number) and a loop with a condition (Algebra, C3). A translation on the grid (Spatial Sense) needs integers.
That is why we teach Grade 6 math and Grade 6 coding in the same lesson. A child who writes the code for a dice experiment does fraction work, percent work and loop work at once, and sees why each one matters.
Source: Ontario’s Grade 6 mathematics curriculum (2020), Grade 6 strands and specific expectations, pulled on 22 October 2026 from the data service that feeds the ministry’s curriculum website. We teach independently and are not linked to the ministry or to any board.
Grade 6 coding
Grade 6 C3.1 asks students to solve math problems “by writing and executing efficient code, including code that involves conditional statements and other control structures”. C3.2 asks them to read and alter code and describe how changes affect “the outcomes and the efficiency of the code”. Grade 5 asked for the conditions; Grade 6 adds the efficiency.
The Grade 6 notes say: “A flow chart can be used to plan and organize thinking. The symbols used in flow charts have specific meanings, including those that represent a process, a decision, and program input/output.” A diamond for each if, a box for each step.
The notes add a warning worth knowing: “The reverse flow chart that is used to solve equations is not the same as the flow chart used in coding.” Children meet both in Grade 6 and often mix them up.
In the curriculum’s words: “More efficient code can reduce execution time and reduce computer storage space.” For a Grade 6 child, that means fewer steps doing the same job, and reusing an answer already worked out.
The curriculum lists possible math situations for Grade 6 coding. Among them are “grouping numbers using the divisibility rules”, “simulating probability situations” and “identifying whether a growing pattern is linear”. Every one is a math topic from another strand, done with code.
So a Grade 6 coding task is rarely a game for its own sake. It is a math question where the program does the repetitive part and the child does the thinking: which rule to test, in which order, and how to know the answer is right.
Science class carries its own coding line. Expectation A2.1 of the 2022 Science and Technology curriculum says Grade 6 students will “write and execute code in investigations and when modelling concepts”. In practice that might be a program that reads a sensor or asks the user for a value, then reports a result.
The same skills carry across: variables, a loop, a decision. A child who is comfortable with conditions in math will find the science tasks familiar, even when the class uses a different tool.
A worked program, ours
Our own worked example, built the way we teach it. The math is Grade 6 B2.2, the divisibility rules for 2, 3, 4, 5, 6, 8, 9 and 10. The coding is Grade 6 C3.1: conditional statements, and one deliberate efficiency.
# Grade 6: which divisibility tests does a number pass? (ours)
def digit_sum(n):
total = 0
for d in str(n):
total = total + int(d)
return total
def passes(n):
tests = []
last = n % 10
if last % 2 == 0:
tests.append(2)
if digit_sum(n) % 3 == 0:
tests.append(3)
if n % 100 % 4 == 0: # last two digits
tests.append(4)
if last == 0 or last == 5:
tests.append(5)
if 2 in tests and 3 in tests: # 6 needs both: no new work
tests.append(6)
if n % 1000 % 8 == 0: # last three digits
tests.append(8)
if digit_sum(n) % 9 == 0:
tests.append(9)
if last == 0:
tests.append(10)
return tests
for n in [2520, 7416, 1155]:
print(n, "passes", passes(n))Output: 2520 passes [2, 3, 4, 5, 6, 8, 9, 10], 7416 passes [2, 3, 4, 6, 8, 9] and 1155 passes [3, 5]. The digit sum of 7416 is 18, which divides by both 3 and 9; its last three digits, 416, are 8 times 52.
Testing 6 by dividing would be one more division. Testing it from the list costs nothing, because the program already knows the answers for 2 and 3. The same idea, keeping an answer you have already worked out, is what makes much bigger programs fast.
There is a second, quieter lesson. The digit sum is calculated twice in this version, once for 3 and once for 9. Ask the student to alter the code so it is calculated only once and stored in a variable. That is a C3.2 task: change the code, then explain the effect on efficiency.
Why does the digit-sum rule work? Because 10, 100 and 1,000 are each one more than a multiple of 9, so a number and its digit sum leave the same remainder when divided by 3 or 9. A Grade 6 student does not need the proof, but a curious one enjoys it.
And why do 4 and 8 only look at the last digits? Because 100 is a multiple of 4 and 1,000 is a multiple of 8, so everything to the left cannot change the remainder. A computer could just divide; the rules are for people working by hand on a test without a calculator.
Practice, ours
These are our practice questions, written for this page and matched to the Grade 6 strands. They are not taken from EQAO, any school or any textbook. Questions 9 to 11 are short Python programs to read. Try each one on paper before checking the answers.
count = 0
for n in range(1, 51):
if n % 6 == 0:
count = count + 1
print(count)What does this print? What question about the numbers 1 to 50 does it answer?
a = 0
n = 6
while n <= 50:
a = a + 1
n = n + 6
print(a)This prints the same number as Question 9. How many times does each loop run? Which is more efficient, and why?
x = 0
while 3 * x + 5 < 32:
x = x + 1
print(x - 1)Predict the output. How does it connect to Question 8? Why does the last line subtract 1?
Question 12 · spatial sense. The point (−3, 2) is translated 5 units right and 4 units down. Where does it land, and in which quadrant?
Bonus, data. Two fair dice are rolled. What is the theoretical probability of a sum of 7? In an experiment of 200 rolls a class got a sum of 7 forty times. What is the experimental probability, and why might the two differ? The six numbers 14, 9, 22, 9, 16 and 20 are a separate data set: find the mean, median, mode and range. Bonus, measurement: a trapezoid has parallel sides of 8 cm and 12 cm and a height of 5 cm. Find its area.
Answers, ours
Each answer shows the reasoning, because that is what a Grade 6 teacher marks. We checked every number with a short program.
if asks the divisibility question once per number.Bonus answers. Six of the 36 equally likely outcomes give a sum of 7, so the theoretical probability is 6/36 = 1/6, about 0.17. The experiment gives 40/200 = 1/5 = 0.2. Experiments vary from the theory, especially with few trials; more rolls usually bring them closer. For the data set, sorted it is 9, 9, 14, 16, 20, 22: the mean is 90 ÷ 6 = 15, the median is halfway between 14 and 16, so 15, the mode is 9 and the range is 22 − 9 = 13. The trapezoid’s area is (8 + 12) ÷ 2 × 5 = 50 cm².
The Grade 6 year
Grade 6 carries two outside events many families hear about late. Here is what their organisers say, with the year on every date, and how we plan the year around them.
| Event | Who runs it | What the organiser says | When |
|---|---|---|---|
| Beaver Computing Challenge, Grade 5/6 | CEMC, University of Waterloo | “Students in Grade 6 or below are eligible to participate in the Grade 5/6 BCC.” “12 multiple-choice questions out of a total of 60 (Grade 5/6).” “Time allowed for completion is 45 minutes.” | CEMC lists North and South America for 9 to 20 November 2026 |
| Grade 6, Junior Division: Assessment of Reading, Writing and Mathematics | EQAO, the Education Quality and Accountability Office | EQAO’s provincial tests “assess students’ literacy (reading and writing) and numeracy (mathematics) knowledge and skills” | EQAO lists the next administration for May 4 to June 8, 2027 |
September to November: integers, place value to a million and the divisibility rules, with the first coding projects. Children who want to try the Beaver Computing Challenge ask their school; CEMC contests are written through a school.
December to March: fractions, percents, patterns and inequalities, each with a short program. April to June: probability simulations, data and geometry, plus review in the weeks before the EQAO window. This is our plan; each school’s order is set by the teacher.
EQAO’s own pages are the place to read about the Grade 6 assessment and any sample materials it offers; start from its Grade 6, Junior Division page. We could not read that page on 22 October 2026, so we do not describe its format here.
Our practice set above is matched to the Grade 6 curriculum strands, not to EQAO questions. Steady work across the year does more than a cram in May, and we do not promise any result.
Sources, all opened 22 October 2026: CEMC’s Beaver Computing Challenge page; EQAO’s assessments page. CEMC and EQAO are independent of us, and we of them.
When to get help
Most Grade 6 struggles start small. These are the signs we see most often in first classes, and the fix we use for each.
If a child adds −7 and 5 and says 12, the number line is missing. We go back to a vertical line, like a thermometer, until direction makes sense.
A child who knows the divisibility rules but cannot say why 6 needs both 2 and 3 will forget them by spring. Writing the rules as code forces the reason.
If a child can type a program but not predict its output, they have met the tool and not the expectation. We ask for a prediction before every run.
Two live lessons, each with one math idea and one short program that uses it. Ten minutes a day at home on three practice questions, with the working shown. One saved program a week in a folder.
Parents need no coding knowledge to help. Ask what the program calculates and what it should print before your child runs it.
Grade 7 coding adds subprograms and loops that stop when a condition is met. A Grade 6 student who already writes small functions, like digit_sum above, walks into Grade 7 a step ahead.
On the math side, integers and fractions are the two foundations Grade 7 builds on most. Time spent on them in Grade 6 is never wasted.
Where your child is now
Our own stages, for children who are learning math and code together.
| Stage | What it looks like |
|---|---|
| 1. Calculator | Works examples step by step but cannot yet say which rule applies when |
| 2. Rule user | Picks the right rule and explains it in a sentence |
| 3. Rule coder | Turns a rule into an if test and checks it on tricky numbers |
| 4. Efficient coder | Spots repeated work in a program and removes it, then explains the saving |
Ask your child to explain one rule from this week without a worksheet in front of them. If they can, they are at stage 2 or beyond.
Stage 3 is where coding starts helping math directly, and it usually takes a few weeks of short programs to reach.
When a rule feels like magic, test it on a number that should fail. Rules you have tried to break are the ones you remember.
Before you run a program, write down what it should print.
The catalogue
All are taught in live video lessons by a teacher who stays with the class, as a group or privately.
ONG / MTH / 01
Fractions and negatives repaired, then equations.
Open the syllabusONG / MTH / 02
Timed contest problems for children who want more.
Open the syllabusONG / MTH / 03
Fast, honest number sense for percents and estimates.
Open the syllabusONG / COD / 01
Blocks for children whose class codes in Scratch.
Open the syllabusONG / COD / 02
Coordinates and conditions inside real games.
Open the syllabusONG / COD / 03
Decomposition and logic puzzles, away from the keyboard.
Open the syllabusONG / NXT / 01
A first website, written in HTML and CSS.
Open the syllabusONG / NXT / 02
Loops and functions that build in three dimensions.
Open the syllabusONG / NXT / 03
For Grade 8 students ready to look past Grade 9.
Open the syllabusHow classes run
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
Weekdays
An hour after school, set when you choose a batch.
Weekends
A morning lesson that leaves the afternoon free.
1-on-1
Built around this term’s math units.
Each lesson pairs a topic with code.
Answers explained, never just given.
We follow what school is teaching.
Whichever the class uses.
What we covered, what to practise.
A group of fifteen to twenty, or a private teacher.
Student work
Projects from older learners who began, like a Grade 6 student, with loops and conditions. The student labs show more.

AI and ML
An AI nutrition coach that reads what you eat and works you toward a target.

AI and ML
A chatbot that answers mathematics and programming questions, built and deployed by a student.

AI and ML
An assistant that helps a young person recognise unsafe situations online.

Web app
A weather forecasting site with live conditions for any location.
Fees
Start with a free class. After that a monthly fee covers eight live classes; the price shown carries its currency code, and families can stop after any month with no term to sign.
Free first class
Free
no card required
Group batch
$100 USD
a month, eight live classes
One to one
$150 USD
a month, eight live classes
What families say
Parents and students, in their own words on Google.
★★★★★
"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."
Ria Mukherjee
Parent
★★★★★
"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."
Samriddha Mondal
Student
★★★★★
"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."
Vansh Agarwal
Student
★★★★★
"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."
Sonam Oswal
Parent of Dhairya
★★★★★
"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."
Sonu Goyal
Parent
★★★★★
"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."
Ritu Kedia
Parent
Questions from Grade 6 families
In Grade 6, Ontario expects code that is efficient and that uses conditional statements, such as if and else, along with loops and other control structures, all in the service of math problems. Students also read code written by someone else, change it, and say whether the change made it work better or faster.
The Grade 6 curriculum notes say more efficient code can reduce execution time and computer storage space. For a Grade 6 student it usually means fewer steps doing the same job, such as using a loop instead of repeating a line, or reusing an answer the program already worked out.
The 2020 curriculum has five content strands in Grade 6: Number, Algebra, Data, Spatial Sense and Financial Literacy, with social-emotional learning skills and the mathematical processes running through them. Grade 6 includes integers, divisibility rules, percents, fractions, linear patterns, inequalities, probability, four-quadrant coordinates and the areas of trapezoids and other polygons.
The Grade 6 curriculum asks students to understand the divisibility rules and use them for 2, 3, 4, 5, 6, 8, 9 and 10. Our worked program on this page turns each rule into a conditional test and checks it against real division.
No. The curriculum does not name a coding tool, and many classes use block-based programs. We teach in Python or Scratch, depending on what the class uses, and many children start Python around Grade 6 because conditions and variables read clearly as words.
EQAO lists the next administration of the Grade 6, Junior Division Assessment of Reading, Writing and Mathematics for May 4 to June 8, 2027. Ask your child's school which days it plans to use.
No. The twelve questions on this page are our own, written to match the Grade 6 curriculum strands. They are not EQAO questions or copies of any school or textbook material.
It is a computational thinking contest run by CEMC at the University of Waterloo. Students in Grade 6 or below can write the Grade 5/6 level, which CEMC describes as 12 multiple-choice questions in 45 minutes. CEMC lists the 2026 contest for 9 to 20 November 2026, written through a school.
It can, when the code computes the math rather than decorating it. Writing a divisibility rule or a probability experiment as a program makes a child state the rule exactly and test it, which is often where understanding finally clicks. We cannot promise a mark, but we see the habit grow.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. We set each slot in Eastern time; when the clocks change on 1 November 2026, we message every family to confirm the hour.
The first class is free. After it, families pay month by month for eight live classes, and the fees box on this page shows the current figure for a group and for one to one. There is no term contract.
Elsewhere on this site
More for Grade 6 families in Ontario.
Classes for every age across the province.
One-to-one math help at this grade.
Math help for Canadian students, Grades 1 to 12.
All our pages for Canadian families.
A method for the questions that hide the math.
Which suits a child of 10 to 12.
The Gauss contest waits in Grades 7 and 8.
What happens in a live lesson.
Start here
Send us your child’s current math unit and anything that has felt hard lately. The first class works on that, and ends with one short program your child wrote.
Curious first? Read how we teach, or open the Math Through Coding syllabus.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
All lessons are online and live, with teachers working from India at times set for Ontario. There is no centre to drive to; message us on WhatsApp for a fast reply.
A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.
Book a priority demo