Study Guides
OxfordAQA IGCSE Computer Science: Programming Fundamentals (9210)
Data types, sequence/iteration/selection, and arithmetic, relational and Boolean operators – the core imperative-programming constructs within Topic 2 Programming of OxfordAQA International GCSE Computer Science (9210).
- Subject
- Computer Science
- Level
- IGCSE
- Topic
- Programming
- Author
- Marlbridge Academic Team
- Updated
- Reviewed by
- Harris Khan (what this means)
Aligned to OxfordAQA IGCSE Computer Science (9210), Teaching from September 2017, exams from May/June 2019. Official specification .
Syllabus page (what it covers and how it is assessed): OxfordAQA IGCSE Computer Science.
Syllabus points this page covers
9210
- 2 Programming (whole topic)
Found an error? Report a correction.
Need help with this topic? Request a free trial class for IGCSE Computer Science (9210).
This guide covers the core language constructs within Topic 2 Programming, one of the eight topics of OxfordAQA International GCSE Computer Science (9210), version 3.5. Topic 2 is larger than most other topics in 9210 and runs to thirteen sub-sections (3.2.1–3.2.13): data types, programming concepts (built on the three combining principles of imperative programming), arithmetic, relational and Boolean operations, data structures, input/output and file handling, string handling, random number generation, subroutines, structured programming, robust and secure programming, and the classification of programming languages and translators. This guide focuses specifically on data types, programming concepts and operators (sections 3.2.1–3.2.5 of the official specification) — the foundational constructs every later part of the topic builds on; sections 3.2.6–3.2.13 are separate, substantial areas of Topic 2 not covered here.
Where this fits in 9210
Written exams for 9210 always present algorithms and code in OxfordAQA’s own pseudocode, regardless of which language a candidate has actually been taught in the classroom (Python, C# and Visual Basic are all common choices). This makes the constructs in this guide genuinely language-independent knowledge: a candidate who understands them in pseudocode terms can apply them to code segments in any language the exam presents.
Syllabus coverage
OXFORDAQA INTERNATIONAL GCSE COMPUTER SCIENCE (9210) — PROGRAMMING FUNDAMENTALS
- 3.2.1 Data types — understanding the concept of a data type, and using
integer, real, Boolean, character and string types appropriately (noting
that some languages use different names, such as
floatfor real numbers; the specification’s general names are used in exams) - 3.2.2 Programming concepts — variable declaration, constant
declaration, assignment, iteration, selection and subroutine
(procedure/function) statement types, and how they combine; definite and
indefinite iteration, including indefinite iteration with the condition
at the start (
WHILE) or the end (REPEAT...UNTIL) of the structure; nested selection and nested iteration; using meaningful identifier names and understanding why this matters - 3.2.3 Arithmetic operations — addition, subtraction, multiplication, real division, and integer division including remainders (modular arithmetic, e.g. 11 DIV 2 = 5, 11 MOD 2 = 1)
- 3.2.4 Relational operations — equal to, not equal to, less than, greater than, less than or equal to, greater than or equal to, using the symbols =, ≠, <, >, ≤, ≥ in assessment material
- 3.2.5 Boolean operations — NOT, AND and OR, and combinations of these operators used within conditions for iterative and selection structures
How to approach it
The three “combining principles” named in 3.2.2 — sequence, iteration and selection — are basic to every imperative programming language, and nearly every algorithm question in the exam is really asking you to identify or write some combination of the three. When reading an unfamiliar pseudocode segment, first identify which of the three each block represents before trying to trace what it does.
Integer division is a common source of careless errors: DIV returns
only the whole-number quotient (11 DIV 2 = 5) and MOD returns only the
remainder (11 MOD 2 = 1) — treating them as a single combined operation,
or mixing up which one gives which value, is one of the most frequent
mistakes in this section. Practise both operations with several examples
until the distinction is automatic.
Boolean operators are also often used within the condition of an
iterative or selection structure rather than as a topic on their own —
for example, WHILE score < 100 AND livesLeft > 0. Practise reading and
writing compound conditions that combine a relational operator (3.2.4)
with a Boolean operator (3.2.5), since this combination, rather than
either in isolation, is what most exam questions actually test.
Worked example: nested iteration and selection
HighScore ← 0
Again ← "Y"
WHILE Again = "Y"
FOR i ← 1 TO 5
INPUT Score
IF Score > HighScore THEN
HighScore ← Score
ENDIF
ENDFOR
OUTPUT HighScore
INPUT Again
ENDWHILE
This short segment combines all three constructs at once: an indefinite
loop with its condition at the start (WHILE), a nested definite loop
(FOR), and a nested selection (IF) inside that. Reading it from the
outside in — first the WHILE, then what’s inside it, then what’s inside
that — is a more reliable technique than trying to trace execution line
by line on a first read. Notice what makes it traceable: HighScore is
initialised before the loops, Score is input inside the FOR loop, and
Again is updated inside the WHILE loop, so the outer loop can end.
Common mistakes
Confusing DIV and MOD, or omitting one of them when a question asks
for both the quotient and the remainder. Writing a definite loop
(FOR) where the number of repetitions is not actually known in
advance, when an indefinite loop (WHILE or REPEAT...UNTIL) is
required. Using vague identifier names (x, temp1) in written
algorithm answers, which the specification explicitly asks candidates to
avoid and explain the reasoning for. Treating AND/OR as interchangeable
— a condition using AND requires every part to be true, while OR
requires only one part to be true, and confusing the two silently
changes what the algorithm actually does.
Quick revision checklist
- Know all five data types and the specification’s naming convention for each.
- Be fluent identifying sequence, iteration and selection inside nested pseudocode.
- Practise DIV and MOD calculations until the distinction is automatic.
- Write and read compound conditions combining relational and Boolean operators.
Where the wider topic goes next
Once data types, control structures and operators are secure, the remaining parts of Topic 2 Programming build on them directly: data structures (3.2.6) use these same constructs to work with arrays and records; input/output and file handling (3.2.7) uses assignment and selection to validate what a user types in; string handling (3.2.8) applies the same operator logic to text rather than numbers; random number generation (3.2.9); subroutines (3.2.10), including procedures and functions with parameters; structured programming (3.2.11); robust and secure programming (3.2.12), including validation, authentication and defensive design; and the classification of programming languages and translators (3.2.13). Treat this guide’s content as the prerequisite layer, and revise it to fluency before moving on to those later sections.
Official syllabus
OxfordAQA International GCSE Computer Science (9210) specification — oxfordaqa.com.
Get free revision emails (optional)
Occasional emails with practice questions, worked explanations and links to free resources for the qualification and subjects you choose. No spam, and you can unsubscribe from any email. The free tools on this site never need an email.
Related resources
-
Practice questions
OxfordAQA IGCSE Computer Science: Programming Fundamentals — Practice Questions (9210)
Original exam-style practice questions with full worked answers on data types, sequence/iteration/selection, and arithmetic, relational and Boolean operators, for OxfordAQA International GCSE Computer Science (9210).
Computer Science · OxfordAQA · IGCSE
Try questions -
Revision notes
OxfordAQA IGCSE Computer Science: Programming Fundamentals — Revision Notes
Condensed recall notes on data types, sequence/iteration/selection, and arithmetic, relational and Boolean operators for OxfordAQA International GCSE Computer Science (9210), sections 3.2.1-3.2.5.
Computer Science · OxfordAQA · IGCSE
Revise topic -
Exam preparation
OxfordAQA International GCSE Computer Science: The Pre-Released Skeleton Program and Paper 2
How to prepare for OxfordAQA International GCSE Computer Science 9210's on-screen Paper 1 built on a pre-released skeleton program, the May/June-only series change, and a worked incremental-coding routine.
Computer Science · OxfordAQA · IGCSE
Read guide
Related articles
-
teaching
A Level tuition in Dubai: Cambridge or Pearson Edexcel International A Level?
Schools in Dubai and Abu Dhabi teach either Cambridge International AS & A Level or Pearson Edexcel International A Level. How the two are structured, why it matters for tuition, and how online classes from Lahore work.
9 October 2026
-
curriculum guides
Choosing subjects at IGCSE and A Level
How subject choices at 14 and 16 affect university options later, and how to keep pathways open without overloading a timetable.
28 July 2026
Studying this with a teacher
Working through Computer Science IGCSE?
This page is free and stays free. If you would rather be taught it, Marlbridge runs Computer Science classes one-to-one and in small groups of up to 15, online in your own time zone. The first trial class is free. WhatsApp replies within an hour (8am–11pm Pakistan time, every day); email the same day.
OxfordAQA Computer Science teachers at Marlbridge