REVISION GUIDE · A LEVEL 9618 PAPER 4

Paper 4 survival guide (A Level Computer Science 9618)

How the practical paper works, what it tests, a time plan, and how to build an evidence document that earns marks.

Paper 4 (Practical) is the only Cambridge A Level Computer Science paper you sit at a computer. You write and test real programs, and submit your code and screenshots in an evidence document. It rewards regular coding practice more than any other paper, and the students who do well treat it as a skills test, not a memory test.

The key facts

Time and marks2 hours 30 minutes, 75 marks, 25% of the A Level
ContentUnits 19 and 20 (computational thinking and further programming), except low-level and declarative programming
LanguagesJava, Visual Basic or Python, in console mode. Choose one and use it all year.
Set-upA school computer with no internet or email. You may be given source files, such as text files of data.
What you submitYour program code and evidence of testing (screenshots of output) in an evidence document
Golden rule: if it is not in the evidence document, it does not get marked. Copy in your code and a screenshot of the output for every task as soon as it works.

What the tasks usually test

  • Arrays and records: storing, searching and updating data.
  • Text files: reading data in, writing results out, handling a missing file.
  • Object-oriented programming: classes with a constructor, private attributes, getters and setters, inheritance and overriding methods.
  • Abstract data types: stacks, queues, linked lists and binary trees, often built with arrays and pointers.
  • Searching and sorting: linear and binary search, bubble and insertion sort.
  • Recursion: writing a recursive function and tracing it.
  • Exception handling: catching errors such as a missing file or invalid input.

A time plan

TimeWhat to do
First 10 minutesRead every question. Open the source files. Note which tasks depend on earlier ones.
Main 2 hoursWork through the tasks in order. After each part works, paste the code and an output screenshot into the evidence document straight away.
Last 15 to 20 minutesCheck every task has code and evidence. Fill any gaps with your best attempt; partial code can still earn marks.

Code patterns to know by heart

These Python examples show two patterns that come up often. Practise writing them from memory in your chosen language.

# Read a text file into a list of records, with exception handling
class Student:
    def __init__(self, name, score):
        self.__name = name          # private attributes (encapsulation)
        self.__score = score

    def get_name(self):
        return self.__name

    def get_score(self):
        return self.__score


def read_students(filename):
    students = []
    try:
        with open(filename, "r") as file:
            for line in file:
                name, score = line.strip().split(",")
                students.append(Student(name, int(score)))
    except FileNotFoundError:
        print("File not found:", filename)
    return students


students = read_students("Students.txt")
for s in students:
    print(s.get_name(), s.get_score())
# A recursive binary search (list must be sorted)
def binary_search(items, target, low, high):
    if low > high:
        return -1                    # base case: not found
    mid = (low + high) // 2
    if items[mid] == target:
        return mid
    elif items[mid] < target:
        return binary_search(items, target, mid + 1, high)
    else:
        return binary_search(items, target, low, mid - 1)


print(binary_search([3, 8, 12, 17, 21, 26], 17, 0, 5))   # prints 3

Evidence that earns marks

  • Paste code as text, not as a screenshot, so it can be read and marked.
  • Show the output for the test data given in the question, exactly as asked.
  • Label each piece of evidence with the question number, for example “1(b) code” and “1(b) output”.
  • Use the identifiers in the question, such as class, method and variable names, so the examiner can follow your code.
  • Add short comments to explain key steps. They make your logic clear even if a small bug stops the program working.

Common mistakes

  • Writing all the code and pasting evidence at the end, then running out of time.
  • Using a language or features you have not practised (no internet means no searching for syntax).
  • Changing the names the question gives you, which makes the code harder to mark.
  • Not handling the edge cases in the test data, such as an empty stack or a value that is not found.
  • Leaving a task blank. A partial attempt with a clear method is better than nothing.

How to prepare

  • Code for at least 20 to 30 minutes several times a week in your chosen language, offline if you can.
  • Rebuild each ADT (stack, queue, linked list, binary tree) from scratch until you can do it without notes.
  • Practise past-paper-style tasks under timed conditions, including making the evidence document.
  • Revise the theory behind the tasks in Computational thinking and problem-solving and Further programming.
  • Track the whole course with the A Level revision checklist.

Frequently asked questions

Which languages can I use for 9618 Paper 4?

Java, Visual Basic or Python, all in console mode. You should use the same language you have practised throughout the course.

Is there internet access in Paper 4?

No. Paper 4 is taken on a school computer with no internet or email access, so you need to know your language well without looking things up.

What is the evidence document in Paper 4?

It is the document where you paste your program code and screenshots of your program running with the test data. Anything not in the evidence document is not marked.

Want to practise Paper 4 with a tutor?

Book a free 30-minute online lesson and we will work through a practical task together in your chosen language. Book a free demo →

Was this page helpful?