Practice Questions
OxfordAQA IGCSE Computer Science: Algorithms — Practice Questions
Original exam-style practice questions with full worked answers on algorithms, flowcharts, pseudocode, trace tables and searching.
- Subject
- Computer Science
- Level
- IGCSE
- Topic
- Topic 1 – Algorithms
- Author
- Marlbridge Academic Team
- Updated
Aligned to OxfordAQA IGCSE Computer Science (9210), 2022-onwards. Official specification .
These are original questions written for Marlbridge, in the style and at the standard of the examination. They are not reproduced past-paper questions — examination boards hold copyright in their own papers. Use these alongside the official past papers available free from your board.
Related: Algorithms revision notes
Section A
1. Name the three basic programming constructs and give an example of each. [3]
2. State the standard flowchart symbol used for a decision, a process and an input/output. [3]
Section B
3. Complete a trace table for the following, with input 27:
n ← 27
count ← 0
WHILE n > 1
IF n MOD 2 = 0 THEN
n ← n / 2
ELSE
n ← 3 * n + 1
ENDIF
count ← count + 1
ENDWHILE
OUTPUT count
(a) Give the first five values taken by n after the loop begins. [3] (b) Explain what the variable count records. [2]
4. Write pseudocode that reads 10 numbers and outputs the total and the average. [5]
5. Write pseudocode for a linear search of an array for a target value, outputting the position or a “not found” message. [6]
6. Explain the difference between a WHILE loop and a FOR loop, and state when each is appropriate. [4]
7. Explain what a trace table is used for and why it is useful when debugging. [3]
Section C
8. A linear search and a binary search are both used to find an item in a sorted list of 1,000 items.
(a) Explain why a binary search is much more efficient than a linear search on this list, giving an approximate comparison count for each. [3]
(b) State one condition a binary search requires that a linear search does not. [1]
9. Trace the following algorithm with input n = 5, showing the value of total after each iteration.
INPUT n
total = 0
FOR i = 1 TO n
total = total + i
NEXT i
OUTPUT total
(a) Complete the trace table and state the output. [3]
(b) Describe in one sentence what the algorithm calculates. [1]
10. A student writes “the search is inefficient” as their answer to an evaluation question and receives no marks. Explain what a precise evaluation answer needs instead. [2]
Answers
1. Sequence — statements executed one after another, e.g. reading input then calculating [1]. Selection — a choice between paths, e.g. IF…THEN…ELSE [1]. Iteration — repetition, e.g. FOR or WHILE [1].
2. Decision — a diamond [1]. Process — a rectangle [1]. Input/output — a parallelogram [1].
3. (a) 27 is odd → 82 [1]; 82 is even → 41; 41 is odd → 124 [1]; 124 → 62; 62 → 31 [1]. (First five: 82, 41, 124, 62, 31.) (b) It records the number of times the loop body executes [1] — that is, how many steps the sequence takes to reach 1 [1].
4.
total ← 0
FOR i ← 1 TO 10
INPUT number
total ← total + number
NEXT i
average ← total / 10
OUTPUT total
OUTPUT average
Initialising total to 0 before the loop [1]; loop repeating exactly 10 times [1]; input inside the loop [1]; running total accumulated correctly [1]; average calculated after the loop and both values output [1].
5.
found ← FALSE
FOR i ← 0 TO LENGTH(arr) - 1
IF arr[i] = target THEN
OUTPUT "Found at position ", i
found ← TRUE
EXIT FOR
ENDIF
NEXT i
IF found = FALSE THEN
OUTPUT "Not found"
ENDIF
Flag initialised [1]; loop over the whole array with correct bounds [1]; comparison with the target [1]; position output when found [1]; early exit [1]; “not found” message only after the loop completes [1].
6. A FOR loop repeats a known, fixed number of times, controlled by a counter [1]; a WHILE loop repeats while a condition remains true, and may execute zero times [1]. Use a FOR loop when the number of iterations is known in advance, such as processing every element of an array [1]; use a WHILE loop when the number is not known, such as repeatedly asking for input until the user enters a valid value [1].
7. A trace table records the value of every variable after each step or iteration of an algorithm [1]. It is useful in debugging because it shows exactly where a value first becomes incorrect [1], so the programmer can identify the specific line at fault rather than guessing — it also confirms that loops terminate as expected [1].
8. (a) A linear search checks each item in turn, so on 1,000 items it may take up to 1,000 comparisons [1]. A binary search repeatedly halves the list, reaching the same item in about 10 comparisons [1], because each comparison eliminates half of the remaining items [1].
(b) The data must be sorted before a binary search can be used [1].
9. (a)
| i | total |
|---|---|
| 1 | 1 |
| 2 | 3 |
| 3 | 6 |
| 4 | 10 |
| 5 | 15 |
Output: 15 [3 — 1 mark for a correctly completed table, 2 for the correct final output].
(b) It sums the integers from 1 to n [1].
10. A precise evaluation answer must identify the specific cause of the inefficiency, such as “the loop continues checking after the item has been found, so unnecessary comparisons are performed” [1], rather than making a vague, unsupported claim [1].
Where marks are usually lost
- Placing the input statement outside the loop.
- Outputting “not found” inside the loop, so it prints on every non-matching element.
- Using a WHILE loop where the number of repetitions is fixed.
- Forgetting to initialise the total or flag before the loop.
Related resources
-
Study Guides
OxfordAQA IGCSE Computer Science: Algorithms (9210)
Representing and analysing algorithms -- the opening topic of OxfordAQA International GCSE Computer Science (9210), updated November 2022.
Computer Science · OxfordAQA · IGCSE
-
Revision Notes
OxfordAQA IGCSE Computer Science: Algorithms — Revision Notes
Condensed recall notes on pseudocode, flowcharts, searching, sorting, trace tables and computational thinking for OxfordAQA International GCSE Computer Science 9210.
Computer Science · OxfordAQA · IGCSE
-
Practice Questions
A Level Computer Science: Procedural Programming — Practice Questions
Original exam-style practice questions with full worked answers on algorithms, searching, sorting, complexity and modular design.
Computer Science · OxfordAQA · AS LEVEL
Related articles
-
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
-
study skills
How to revise for a science examination
Most science revision fails because it rereads notes instead of retrieving them. A practical method for revising physics, chemistry and biology in the weeks before a paper.
14 July 2026
Working through Computer Science? Tutoring covers the same material with a teacher.
Find Learning Support