Five universities · Three provinces of origin · Checked 22 October 2026

Computer science prerequisites at Canadian universities

Every university writes its computer science requirements its own way, in its own course names, on its own website, and they change between admission cycles. We read five universities’ official pages on 22 October 2026 and set their lists side by side for students applying from Ontario, British Columbia and Alberta. Each row names its source. Universities we could not read are listed as not read rather than filled in from memory. Use the tables to plan a timetable, then confirm every line on the university’s own site in the year of application.

10,000+ students since 2020 · Grade 12 math in Ontario and western course names · Taught live

In short

Checked at each university’s own site on 22 October 2026: Waterloo, all three U of T campuses and McMaster listed Calculus and Vectors (MCV4U) for Ontario computer science applicants, and UBC Science listed Advanced Functions and a Grade 12 science instead; every list named English. Modern Age Coders teaches that math live online in Ontario Grade 12 University Math and its western counterpart, as a batch class or one to one.

The math every list asks for

Three courses mapped to the requirement tables

Grade 12 math appears in every list below, in Ontario names or western ones, and computer science background helps in every first year. One course for each.

Applying from Ontario

Ontario high school applicants: what each program lists

Six computer science routes, four universities, one date. The cells hold course codes or short labels; the university pages hold the full wording.

Courses listed for Ontario high school applicants to computer science (each university’s own page, read 22 October 2026)
ProgramEnglishMHF4UMCV4UAlso listedSource
Waterloo, Computer ScienceAny Grade 12 U EnglishYesYesOne other Grade 12 U course; AIFuwaterloo.ca requirements tool
U of T St. George (TAD)ENG4U / EAE4UNot namedYesSupplemental applicationfuture.utoronto.ca
U of T Mississauga (TMX)ENG4U / EAE4UYesYesMDM4U recommendedfuture.utoronto.ca
U of T Scarborough (TXC)ENG4U / EAE4UYesYesNonefuture.utoronto.ca
McMaster, Computer Science (B.A.Sc.)ENG4UNot namedYesOUAC code MC / MCC; a supplementary application deadline of January 28, 2027future.mcmaster.ca requirements tool
UBC Vancouver, Science (entry route to CS)ENG4UYesNot namedOne of SBI4U, SCH4U or SPH4U; Grade 11 SCH3U and SPH3Uyou.ubc.ca requirements tool

How to read Not named

Not named means the course does not appear in that university’s published list of required courses for that program on that day. It does not mean the university considers the course unimportant, and it does not mean a student can skip it. Ontario’s own math curriculum (revised 2007) says “Advanced Functions (MHF4U) must be taken prior to or concurrently with Calculus and Vectors (MCV4U).” So any student with MCV4U on the transcript has MHF4U too, whichever course a university chooses to name.

Every row also sits inside a general rule about how many Grade 12 U or M courses a student needs. Waterloo and McMaster both say six, and the central U of T page asks for six 4U or M subjects with English among them.

The UBC row is a different kind of entry

UBC’s computer science department states it directly: “there is no direct admission into the Computer Science program”. Students first join a faculty with computer science specializations, such as Science, and seek the computer science specialization later. The row above is therefore UBC’s Science list for Ontario students, the usual first step toward computer science there.

Hence the science courses, at both Grade 12 and Grade 11 level, in that row. UBC says the Grade 11 courses “may be waived with scores of 86% or higher in senior-level Math and Chemistry”.

Sources, all read 22 October 2026: Waterloo, Computer Science requirements for Ontario; U of T Future Students, Computer Science; McMaster admission requirements tool (Computer Science, Ontario); UBC requirements for Canadian high schools (Vancouver, Ontario, Science); UBC Computer Science, admission processes. We have no affiliation with any of these universities.

The calculus question

Is MCV4U required for computer science?

It is one of the most searched questions about Ontario computer science admission, and the honest answer depends on the program. Here is what each list we read said about Calculus and Vectors.

Calculus and Vectors (MCV4U) in the Ontario lists above (read 22 October 2026)
ProgramMCV4U in the published list?How it is written
Waterloo, Computer ScienceYesCalculus and Vectors 4U
U of T, all three campusesYesCalculus & Vectors, MCV4U
McMaster, Computer ScienceYesMCV4U
UBC Vancouver, ScienceNoThe list names MHF4U and a Grade 12 science instead

Our reading of the table

Five of the six Ontario routes we read name MCV4U outright. A student who leaves it off the Grade 12 timetable closes those five doors at once, and keeps only the UBC Science route among the ones we checked. For a student who is serious about computer science and still choosing universities, that makes MCV4U the course to protect.

This is our planning inference from the published lists, not any university’s advice. Universities we could not read may differ, and any of these lists can change.

Why calculus sits under computer science

Waterloo’s first-year computer science schedule contains two calculus courses, and U of T’s and McMaster’s lists treat MCV4U as a prerequisite rather than a recommendation. Rates of change, limits and vectors run through algorithms, graphics, machine learning and simulation.

The practice problems further down show where each Grade 12 topic reappears in computing, with worked answers. They are ours, written to make the link concrete rather than to imitate any school’s exam.

Applying from BC or Alberta

British Columbia and Alberta applicants: the lists in western course names

Universities translate their requirements into each province’s courses. We read the British Columbia and Alberta versions for the programs whose tools offered them.

Courses listed for British Columbia high school applicants (read 22 October 2026)
ProgramEnglishMathScienceGrade 11Source
Waterloo, Computer ScienceEnglish Studies 12 or English First Peoples 12Pre-Calculus 12; Calculus 12 or AP CalculusNone listedNone listeduwaterloo.ca
McMaster, Computer ScienceEnglish Studies 12, English 12 or English 12 First PeoplesCalculus 12 or AP CalculusNone listedNone listedfuture.mcmaster.ca
UBC Vancouver, ScienceEnglish Studies 12 or English First Peoples 12Pre-Calculus 12Anatomy and Physiology 12, Chemistry 12 or Physics 12Chemistry 11; Physics 11you.ubc.ca
SFU, Computing ScienceEnglish Studies 12 or English First Peoples 12At least one of Pre-Calculus 12 or Calculus 12At least one of Anatomy and Physiology 12 (Biology 12), Chemistry 12, Physics 12No specific Grade 11 course requirementssfu.ca
Courses listed for Alberta high school applicants (read 22 October 2026)
ProgramEnglishMathScienceGrade 11Source
Waterloo, Computer ScienceEnglish Language Arts 30-1Mathematics 30-1; Mathematics 31None listedNone listeduwaterloo.ca
McMaster, Computer ScienceEnglish Language Arts 30-1Math 31 or AP CalculusNone listedNone listedfuture.mcmaster.ca
UBC Vancouver, ScienceEnglish Language Arts 30-1Math 30-1 or Math 31 (5 credits)Biology 30, Chemistry 30, or Physics 30Chemistry 20; Physics 20you.ubc.ca

What changes when you cross the border

For students in British Columbia and Alberta the calculus course is the swing factor. Waterloo asks for Calculus 12 or AP Calculus in British Columbia and Mathematics 31 in Alberta; McMaster asks for the same calculus courses; UBC Science and SFU accept Pre-Calculus 12 (SFU: Pre-Calculus 12 or Calculus 12) without a calculus course on their lists.

A Grade 12 science appears only on the UBC and SFU lists, because both route computer science through a science-based admission. Waterloo and McMaster list none.

Course-count rules in the west

Waterloo wants six Grade 12 academic courses from British Columbia applicants and five academic courses, each at 30 or 31 level, from Alberta applicants. McMaster asks for five in each province, and in British Columbia excludes most applied design, career, physical education and faith-based courses. SFU asks for at least five approved academic Grade 12 courses.

SFU also sets a general rule for every program: a minimum of 70 per cent in Language Arts 11, English 12 or an equivalent. UBC’s general requirements for British Columbia include a 70 per cent minimum in senior English.

Sources, read 22 October 2026: Waterloo’s requirements tool, Computer Science, British Columbia and Alberta; McMaster’s requirements tool, Computer Science, both provinces; UBC’s requirements tool, Vancouver, Science, both provinces; SFU Computing Science requirements (BC high school). SFU’s Alberta page was not read.

What is missing, and why

Universities we could not read, and therefore left out

A comparison is only as honest as its gaps. These universities are absent from the tables because we could not read their requirement pages at the source on 22 October 2026, not because their requirements are unimportant or similar to the others.

Sources attempted and not used (22 October 2026)
UniversityWhat happenedWhat families should do
Queen’s UniversityThe site returned an access-denied response (403); we stopped thereRead the Computing program requirements on queensu.ca
University of AlbertaThe site returned an access-denied response (403); we stopped thereRead the Computing Science requirements on ualberta.ca
University of CalgaryThe page loaded, but its requirement fields showed template placeholders rather than coursesOpen the Computer Science page in a browser, where the list renders
McGill UniversityNo program page found at the addresses tried; the listing builds itself in the browserUse McGill’s undergraduate admissions program finder
University of OttawaNo program page found at the addresses triedUse uOttawa’s undergraduate program pages
U of T Arts & Science pageA bot-verification screen; not retriedThe central U of T page in the Ontario table was read instead

We do not fill a gap from memory or from third-party summaries, because a requirement list quoted wrongly does real damage to a student’s timetable. If your teen is considering one of these universities, its own page is the only source to plan from.

A planning table, ours

To keep every listed option open: the combined course list

Undecided students often ask a simpler question: which courses keep all of these doors open at once? This table is our answer, built by combining the lists above. It is a planning aid, not any university’s requirement.

Courses that together cover every list in this page’s tables, by province of the applicant (ours, from the 22 October 2026 lists)
Applying fromCourses that cover every list we readWhy each is there
OntarioENG4U; MHF4U; MCV4U; one of SBI4U, SCH4U or SPH4U; SCH3U and SPH3U in Grade 11; MDM4U if room allowsENG4U satisfies every English line; MCV4U for Waterloo, U of T and McMaster; MHF4U for Waterloo, Mississauga, Scarborough and UBC, and before MCV4U under the Ontario curriculum; the sciences for UBC Science; MDM4U is a Mississauga recommendation, not a requirement
British ColumbiaEnglish Studies 12; Pre-Calculus 12; Calculus 12; one of Anatomy and Physiology 12, Chemistry 12 or Physics 12; Chemistry 11 and Physics 11English Studies 12 is named on all four lists; Calculus 12 for Waterloo and McMaster; Pre-Calculus 12 for Waterloo and UBC; a Grade 12 science for UBC and SFU; the Grade 11 sciences for UBC
AlbertaEnglish Language Arts 30-1; Mathematics 30-1; Mathematics 31; one of Biology 30, Chemistry 30 or Physics 30; Chemistry 20 and Physics 20English Language Arts 30-1 is on all three lists; Math 31 for Waterloo and McMaster; Math 30-1 for Waterloo; a 30-level science and the 20-level sciences for UBC

How we built it

For each province we took every course or course group that any list named, then removed duplicates. Where a list offered a choice, such as one of three sciences, we kept the choice. The result is the smallest set we could find that covers every line in this page’s tables for that province.

It is bigger than any single university’s list, which is the point: it is the cost of not deciding yet. A student who settles on two universities can drop whatever only the others needed.

What it does not cover

It ignores averages, supplementary forms and the total number of courses each university counts, all of which matter. It also covers only the universities we could read. Add each new university’s list to it by hand before relying on it.

A computer science course appears in none of the required lists we read, so it is not in the combined list. It still belongs in a future computer science student’s timetable where the school offers it, for the skill it builds rather than for admission.

Published ranges

Averages, as the universities publish them

Several of the pages we read print an average or range. We list the exact words, without converting, ranking or interpreting them.

Published averages and ranges for computer science routes (read 22 October 2026)
ProgramLabel usedWording
Waterloo, Computer ScienceAdmission averageIndividual selection from the low to mid-90s
McMaster, Computer ScienceAnticipated Admission Rangemin. 90%
U of T MississaugaCompetitive AverageMid to High 80s
U of T ScarboroughApproximate grade requirementsLow 90s overall; High 90s overall (co-op)
UBC, SFU, U of T St. GeorgeNo range on the pages we readNot stated

Each label means something slightly different: an individual-selection range, an anticipated range, a competitive average, an approximate requirement. None is a promise in either direction, several programs also read supplementary forms, and every one can move from year to year. Nobody here will turn a range into a forecast for your teen, and we never promise an admission result.

Practice, ours

Why computer science asks for this math: eight problems

These eight problems are ours, written for this page. Each one takes a Grade 12 topic from the lists above and shows where it reappears in computing. Questions 1 to 3 use Advanced Functions and Pre-calculus ideas; 4 to 8 use Calculus and Vectors. Try them before reading the answers.

  1. Logarithms and search. A sorted list holds 1,000,000 names. Binary search checks the middle item and keeps only the half that can still contain the target. What is the largest number of comparisons it can need?
  2. Exponential growth. A brute-force program’s running time doubles each time the input grows by one item. With 30 items it takes 1 second. Roughly how long does it take with 40 items?
  3. Sums and nested loops. A loop runs i from 0 to n − 1, and inside it a second loop runs j from 0 to i − 1, adding 1 to a counter each time. Find a formula for the final count, then evaluate it for n = 100.
  4. Rates of change from data. A sorting routine takes 0.02 seconds for 1,000 items and 0.08 seconds for 2,000. Assume time is k times n squared. Find k and predict the time for 5,000 items.
  5. Vectors and motion. A game character starts at (2, 3) and moves with velocity (4, −1) units per second. Where is it after 2.5 seconds, and what is its speed?
  6. The dot product. A wall in a game runs along the direction (3, 4). Is the direction (4, −3) perpendicular to it? Why would a game engine care?
  7. Derivatives and learning. A model’s error is f(x) = x² − 6x + 10. Starting at x = 0, gradient descent repeatedly replaces x with x − 0.25 f′(x). Give the first two new values of x, and the value the process approaches.
  8. Limits and approximation. Without a calculator, estimate the slope of f(x) = x³ at x = 2 using the points x = 2 and x = 2.1. Compare it with the exact derivative.

Answers, ours

Worked answers to the eight problems

Each answer shows the reasoning, because the reasoning is what first-year courses build on. Three answers are also checked by a short program at the end.

  1. 20 comparisons. After k comparisons at most n divided by 2 to the k items remain, so we need the smallest k with 2 to the k at least 1,000,001. Since 2 to the 19 is 524,288 and 2 to the 20 is 1,048,576, k is 20. Twenty steps for a million items is why logarithms matter in computing.
  2. About 17 minutes. Ten more items means ten doublings: 2 to the 10 is 1,024, so 1,024 seconds, a little over 17 minutes. Ten more after that would be about 12 days. Exponential algorithms stop being usable very quickly.
  3. n(n − 1)/2, so 4,950. The inner loop runs 0 times, then 1, then 2, up to n − 1 times: an arithmetic series whose sum is n(n − 1)/2. For n = 100 that is 100 times 99 divided by 2, or 4,950. Doubling n roughly quadruples the work.
  4. k = 0.00000002, and 0.5 seconds. From 0.02 = k(1,000)², k = 2 × 10 to the −8. The second measurement agrees: k(2,000)² = 0.08. Then k(5,000)² = 2 × 10 to the −8 × 25,000,000 = 0.5 seconds. Checking a model against a second data point before predicting is the habit to keep.
  5. (12, 0.5), speed about 4.12. Position is start plus time times velocity: (2 + 4 × 2.5, 3 − 1 × 2.5) = (12, 0.5). Speed is the length of the velocity vector, the square root of 16 + 1, which is the square root of 17, about 4.12 units per second.
  6. Yes, perpendicular. The dot product is 3 × 4 + 4 × (−3) = 12 − 12 = 0, so the directions are at right angles. A game engine uses exactly this to find the wall’s normal, the direction a ball bounces off along.
  7. x = 1.5, then 2.25, approaching 3. The derivative is 2x − 6. From 0: 0 − 0.25 × (−6) = 1.5. Then 1.5 − 0.25 × (−3) = 2.25. Each step halves the distance to 3, where the derivative is zero and the error is smallest. This is the idea behind how many machine learning models are trained.
  8. About 12.61, against an exact 12. The secant slope is (2.1³ − 2³)/0.1 = (9.261 − 8)/0.1 = 12.61. The derivative 3x² at 2 is 12. Shrinking the gap to 0.01 gives 12.0601, closer still: the limit idea computers use when they estimate derivatives numerically.
Python · checking answers 1, 3 and 7 (ours)python
# Checking three of the practice answers by brute force (ours)
import math

def search_steps(n):
    """Worst-case comparisons for binary search on n sorted items."""
    steps, size = 0, n
    while size > 0:
        steps += 1
        size //= 2                 # each comparison keeps at most half
    return steps

def nested_count(n):
    count = 0
    for i in range(n):
        for j in range(i):         # j runs 0 .. i-1
            count += 1
    return count

def descend(x, rate, steps):
    """Gradient descent on f(x) = x**2 - 6x + 10, whose derivative is 2x - 6."""
    path = [x]
    for _ in range(steps):
        x = x - rate * (2 * x - 6)
        path.append(x)
    return path

print("Q1:", search_steps(1_000_000), "comparisons; log2 gives", math.ceil(math.log2(1_000_001)))
print("Q3:", nested_count(100), "and n(n-1)/2 gives", 100 * 99 // 2)
print("Q7:", descend(0, 0.25, 4))

Output: Q1: 20 comparisons; log2 gives 20. Q3: 4950 and n(n-1)/2 gives 4950. Q7: [0, 1.5, 2.25, 2.625, 2.8125]. The brute-force counts agree with the formulas, which is the point of checking a formula with code.

What the eight problems have in common

None of them needs advanced code; all of them need the math to be understood rather than memorised. A student who can say why binary search takes 20 steps, or why the nested loop gives a triangular number, is doing first-year computer science reasoning already.

That is the standard we teach to. In our Grade 12 math classes, a formula comes with its reason and a second way to check it, and the checking is often a three-line program.

Using the problems

Students can work them as written, then change the numbers: a list of a billion items, a loop that starts at 1, a learning rate of 0.6 instead of 0.25. Predict first, then run the code above with the new values.

Question 7 with a learning rate of 1.1 is worth trying in particular. Predict what happens, then run it. The result explains why choosing that number carefully matters in machine learning.

Where your teen stands

Four stages from Grade 12 math to computing math

Our stages, from teaching Grade 12 students in Ontario and the western provinces who went on to computing degrees.

Stages from school math to computing math (ours)
StageWhat a teacher notices
1. CalculatorGets numerical answers, but cannot say what they would mean in a program
2. TranslatorWrites a formula as code and code as a formula, for simple cases
3. EstimatorPredicts roughly how long an algorithm will take before running it
4. ModellerChooses the math a problem needs: logs, sums, rates or vectors

For parents

Ask your teen to estimate how many steps a search through a million items takes. Their answer, and how they reach it, shows the stage quickly.

Stage 2 is the hinge. Once a student can move between a formula and a loop, both subjects start reinforcing each other.

For students

Every time you learn a formula, write a five-line program that tests it on real numbers. You will catch your own mistakes and remember the idea.

Practise estimating before calculating. Within a factor of ten is a good first target; then get closer.

The catalogue

Nine more courses for future computing students across Canada

Taught live by one regular teacher, to a class or to a single student, wherever in Canada you live.

I

Math, wherever you study

Grades 9 to 12

CSP / MTH / 01

High school mathematics

Algebra to calculus, for gaps before Grade 12.

Open the syllabus

CSP / MTH / 02

Waterloo math contests

Contest reasoning from Gauss to Euclid, with our own problems.

Open the syllabus

CSP / MTH / 03

AP Calculus

For schools where AP Calculus stands in for provincial calculus.

Open the syllabus
II

Algorithms and contests

Teens

CSP / ALG / 01

CCC Junior and Senior preparation

Canada’s programming contest, practised with original problems.

Open the syllabus

CSP / ALG / 02

Problem solving for teens

Searching, sorting and the analysis behind them.

Open the syllabus

CSP / ALG / 03

Competitive programming

Faster, harder problem sets after the basics.

Open the syllabus
III

Languages and applied computing

Teens

CSP / LNG / 01

Python for teens

The language used for the checks on this page.

Open the syllabus

CSP / LNG / 02

Java for teens

Strong typing and objects, common in first year.

Open the syllabus

CSP / LNG / 03

AI and machine learning for teens

Gradient descent and models, built by hand.

Open the syllabus

How classes run

Classes in your province’s course names and clock

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

After school in your own zone, from Newfoundland to British Columbia.

Weekends

Mornings in Eastern time, or later for western families.

1-on-1

Fitted to your school’s exam calendar.

Your course, by name

MCV4U, Pre-calculus 12 or Math 31, as your school calls it.

One regular teacher

The same person every week.

Formulas with reasons

Each rule explained, then checked.

Code to test ideas

Small programs alongside the math.

No admission coaching

We teach skills, not applications.

Batch or private

Fifteen to twenty in a class, or a private teacher.

Student work

Made by our students

Student projects that started as an idea and a small amount of math. More on the student labs page.

NutriLife AI nutrition coach project screenshot

AI and ML

NutriLife

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

by Bhavya · Open it

Misti AI chatbot for maths and coding screenshot

AI and ML

Misti

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

by Harshit · Open it

GuardianX AI internet safety assistant screenshot

AI and ML

GuardianX

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

by Vivaan · Open it

SkyCast weather forecast application screenshot

Web app

SkyCast

A weather forecasting site with live conditions for any location.

by Krish

Fees

Fees

Your first class is on us. Families who carry on pay a single monthly fee for eight live classes, priced in the currency code shown, and can end it after any month with nothing to cancel.

Free first class

Free

no card required

  • First class on us
  • Any province, any course name
  • No card required
Book it

Group batch

$140 CAD

a month, eight live classes

  • Group of fifteen to twenty
  • Steady teacher
  • You choose the batch
  • Pay month by month
Start here

One to one

$210 CAD

a month, eight live classes

  • Just your teen and a teacher
  • Paced to their school calendar
  • Built around their own course
Enquire

What families say

Rated 4.9 across 547 Google reviews

Parents and students on Google, in their own words.

★★★★★

"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

Families ask

Computer science prerequisites in Canada: questions

What high school courses do I need for computer science in Canada?

In the lists we read on 22 October 2026, every program named a senior English course and Grade 12 math. For Ontario applicants, Waterloo, U of T and McMaster named Calculus and Vectors, and UBC Science named Advanced Functions and a Grade 12 science. Each university and province has its own list.

Is MCV4U required for computer science?

For five of the six Ontario routes we read, yes: Waterloo, all three U of T campuses and McMaster listed MCV4U. UBC Science's Ontario list named MHF4U and a Grade 12 science, not MCV4U. Universities we could not read may differ.

Is MHF4U required for computer science?

Waterloo, U of T Mississauga, U of T Scarborough and UBC Science listed MHF4U for Ontario applicants. U of T's central page did not name it for St. George, and McMaster's list named ENG4U and MCV4U. Ontario's math curriculum requires MHF4U to be taken before or at the same time as MCV4U, so in practice students who take MCV4U take MHF4U as well.

Do I need a computer science course in high school to study CS?

None of the required-course lists we read named one. Waterloo describes its recommended computer science courses as helpful background that does not affect the likelihood of admission. Taking one where the school offers it still makes first-year programming easier.

What does a BC student need for computer science?

Calculus 12 or AP Calculus appears on the Waterloo and McMaster lists we read, and Waterloo adds Pre-Calculus 12. UBC Science and SFU name Pre-Calculus 12 instead, with SFU taking Calculus 12 as the alternative, and both add a Grade 12 science. English Studies 12 is accepted on all four lists.

What does an Alberta student need for computer science?

Math 31 is on the Waterloo and McMaster lists, McMaster also taking AP Calculus, and Waterloo adds Mathematics 30-1. UBC Science accepts Math 30-1 or Math 31 together with a 30-level science and the 20-level chemistry and physics courses. English Language Arts 30-1 is on all three lists.

Does UBC admit high school students straight into computer science?

UBC's computer science department says it does not. Students first join a faculty with computer science specializations, usually Science, and seek the specialization once first year is under way.

Why is Queen's or the University of Alberta missing?

Their websites refused our request on 22 October 2026, so we stopped and did not use them. We also could not read usable requirement pages for Calgary, McGill or uOttawa that day. Please check those universities' own pages.

Why does computer science need so much math?

Because first-year computing uses it immediately: logarithms in searching, sums in counting loop steps, rates of change in training models, vectors in graphics. The eight practice problems on this page show each link with a worked answer.

When are your classes?

Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. The hour is fixed in your own province's clock, from British Columbia and Alberta through Ontario and Quebec to the Atlantic provinces and Newfoundland.

Elsewhere on this site

Related pages

Pages for students in every part of Canada.

Coding classes in Canada

Our home page for Canadian families.

Ontario

Classes for Ontario learners.

British Columbia

Classes timed for families in BC.

Alberta

Classes timed for Alberta families.

Math tutoring in Canada

Tutoring that uses each province’s own course names.

ICS3U help

Ontario’s Grade 11 computer science course.

CCC preparation

The national programming contest.

AI and machine learning in Canada

Where gradient descent leads next.

Think like a programmer

Problem solving before code.

Start here

Book one free class

Tell us the province, the Grade 12 math course by its school name, and whether your teen codes. The teacher starts from the topic they are on now.

Want details first? See the western Grade 12 math syllabus or the Ontario Grade 12 math syllabus, and how we teach.

WhatsApp us · +91 91233 66161 · connect@modernagecoders.com

Teaching is live on video, by teachers working from India, so it works the same in Halifax, Toronto, Calgary or Vancouver. WhatsApp is the quickest way to reach us.

The free class needs no card details to book.

Want a class sooner? Book a priority demo

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

Keep exploring Modern Age Coders

Related courses and guides

Free resources

From the blog

Start here

Free classPriority demoCall us