Cambridge A Level Computer Science 9618 — 2025 Oct/Nov Paper 3 · Variant 2
9618/32/O/N/25 · 12 questions · 75 marks · ≈84 min
The question paper and its mark scheme, free to read here and free to download. This is Cambridge’s own paper, exactly as it was sat.
Question paper16 pages
















Mark scheme17 pages
Answers below. Sit the paper first if you are practising.

















Questions as text
Q1 · The composite data type, Car, is defined in pseudocode as: TYPE Car DECLARE RegNumber…
1 The composite data type, Car, is defined in pseudocode as: TYPE Car DECLARE RegNumber : STRING DECLARE Make : STRING DECLARE Model : STRING DECLARE BodyStyle : STRING DECLARE Colour : STRING DECLARE IntoStock : DATE DECLARE Price : REAL ENDTYPE (a) (i) Write the pseudocode statement to set up a variable for one record of the composite data type, Car. ........................................................................................................................................... ..................................................................................................................................... [1] (ii) Write the pseudocode statements to assign the following values to the variable set up in part (a)(i): • "Blue" to Colour • 21/10/2025 to IntoStock ........................................................................................................................................... ........................................................................................................................................... ........................................................................................................................................... ..................................................................................................................................... [2] (b) The data type for BodyStyle is changed to an enumerated type, Body. (i) Write the pseudocode statement for the type declaration of Body to hold the names of the available choices: Convertible, Hatchback, Saloon, SUV ........................................................................................................................................... ........................................................................................................................................... ........................................................................................................................................... ..................................................................................................................................... [2] (ii) Write the new pseudocode statement required to update the declaration of BodyStyle in the definition of Car. ........................................................................................................................................... ..................................................................................................................................... [1]
Mark scheme: Question Answer Marks 1(a)(i) DECLARE Car1 : Car 1 1(a)(ii) One mark for each correct answer 2 Example answer Car1.Colour "Blue" Car1.IntoStock 21/10/2025 1(b)(i) One mark per mark point (Max 2) 2 MP1 TYPE Body = MP2 (Convertible, Hatchback, Saloon, SUV) Example answer TYPE Body = (Convertible, Hatchback, Saloon, SUV) 1(b)(ii) DECLARE BodyStyle : Body 1
Q2 · Numbers are stored in a computer system using binary floating-point representation with…
2 Numbers are stored in a computer system using binary floating-point representation with: • 10 bits for the mantissa • 6 bits for the exponent • two’s complement form for both the mantissa and the exponent. (a) Calculate the denary value of the given normalised binary floating-point number. Show your working. Mantissa Exponent 0 1 1 1 1 0 0 1 0 1 0 0 1 0 1 1 Working ..................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... Denary value ............................................................................................................................. [3] (b) Calculate the normalised binary floating-point representation of +26.6875 in this system. Show your working. Mantissa Exponent Working ..................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... [3]
Mark scheme: 2(a) Two marks for working 3 • correct calculation/application of exponent seen • correct method to find the final answer Working: Exponent = 8 + 2 + 1 = 11 // =0.111100101 x 211 // =11110010100.0 (moving bp 11 places to right) Method to find the answer // 1024 + 512 + 256 + 128 + 16 + 4 One mark for correct answer Denary value: 1940 Example of solution using fractions: 2(b) One mark per mark point (Max 3) 3 MP1 correct method to find the binary number MP2 correct use of exponent MP3 correct answer in the space provided Working: 26.6875 converted to binary (0)11010.1011 // 16+8+2+0.5+0.125+0.0625 movement of binary point by 5 places Mantissa Exponent 0 1 1 0 1 0 1 0 1 1 0 0 0 1 0 1
Q3 · HTTP and IMAP are examples of protocols used in the Application Layer of the TCP/IP…
3 (a) HTTP and IMAP are examples of protocols used in the Application Layer of the TCP/IP protocol suite. State the purpose of the HTTP and IMAP protocols. HTTP ........................................................................................................................................ ................................................................................................................................................... IMAP ......................................................................................................................................... ................................................................................................................................................... [2] (b) Describe how files are shared using the BitTorrent protocol. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [4]
Mark scheme: 3(a) One mark per mark point (Max 2) 2 • HTTP to send and receive / transfer web pages / hypertext / images / videos • IMAP allows users to access/read their emails from any device without removing the message from the mail server // synchronises emails on any device 3(b) One mark per mark point (Max 4) 4 MP1 Files are shared over a peer-to-peer network MP2 A small file, a torrent (descriptor file), is initially created by a peer MP3 The torrent (descriptor file) contains metadata about the file to be shared MP4 The whole file must initially be located on at least one peer MP5 The file is broken into equal sized pieces MP6 Other peers who wish to download the file first obtain the torrent (descriptor file) and connect to a tracker MP7 A tracker acts like a server that holds all the data about all the computers connected to it / the swarm MP8 Each peer downloads parts of the file from other peers until the entire file has been downloaded MP9 As each peer receives a piece of the file, they become a source for that piece of the file MP10 A peer who has a complete file and is sharing it is a seed // Once a peer has completely downloaded the file and made the file available to others in the swarm, they become a seed.
Q4 · Identify one benefit of circuit switching and one benefit of packet switching
4 (a) Identify one benefit of circuit switching and one benefit of packet switching. Circuit switching ........................................................................................................................ ................................................................................................................................................... Packet switching ....................................................................................................................... ................................................................................................................................................... [2] (b) Identify two differences between circuit switching and packet switching. 1 ................................................................................................................................................ ................................................................................................................................................... ................................................................................................................................................... 2 ................................................................................................................................................ ................................................................................................................................................... ................................................................................................................................................... [2]
Mark scheme: 4(a) One mark for a benefit of circuit switching (Max 1) 2 MP1 Once the connection is made, it is available until the end of the transmission (suitable for long continuous transmission) MP2 The dedicated path ensures a steady rate of data transmission, once connection has been made (because the whole bandwidth is available) MP3 The dedicated path ensures data is less likely to be lost. MP4 No intermediate delays once the circuit is established, enables real time transmission MP5 No additional time/delay to reorder needed because data arrives in the order it was sent / data sent as a continuous stream One mark for a benefit of packet switching (Max 1) MP6 No need to tie up a communication line // path available to multiple users // bandwidth can be shared by multiple users MP7 Possible to overcome failed / faulty / busy lines by re-routing packets MP8 Individual packets can be resent if lost/damaged MP9 Users only charged for the duration of connectivity MP10 High rate of data transmission possible MP11 Always uses digital networks so data is transmitted directly to the destination MP12 Good security because all packets can take different routes // A more secure method because all packets can take different routes 4(b) One mark per difference (Max 2) 2 MP1 Circuit switching requires a dedicated line to be connected before the data transfer takes place, in packet switching, data transfer commences directly/ straight away MP2 In circuit switching, each data unit knows the entire path address, but in packet switching, each data unit only knows the final address (routers decide intermediate paths) MP3 Circuit switching uses the whole bandwidth of the transmission path, but packet switching shares it with other users // circuit switching uses a constant high bandwidth. Packet switching has variable bandwidth MP4 In circuit switching each data unit follows the same route, but in packet switching, packets can follow any route MP5 In circuit switching data arrives in the correct order but in packet switching it has to be reordered MP6 Data remains intact / a continuous stream in circuit switching but is segmented in packet switching MP7 Lost data in circuit switching requires the whole transmission to be resent, but individual packets can be resent in packet switching MP8 Circuit switching doesn’t suffer data loss but packets can be lost in packet switching.
Q5 · Describe how interrupt handling is used in low-level scheduling
5 (a) Describe how interrupt handling is used in low-level scheduling. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [2] (b) In process management, a process can be in one of three process states: running, ready or blocked. Complete the table to identify one reason why a process could be in each of the three states. Process state Reason ................................................................................................ ................................................................................................ running ................................................................................................ ................................................................................................ ................................................................................................ ................................................................................................ ready ................................................................................................ ................................................................................................ ................................................................................................ ................................................................................................ blocked ................................................................................................ ................................................................................................ [3]
Mark scheme: 5(a) One mark per mark point (Max 2) 2 MP1 The low-level scheduler manages the handling of interrupts based on priority MP2 … ensuring that critical events are handled without delay MP3 It uses an Interrupt Vector Table (IVT) / Interrupt Descriptor/Despatch Table (IDT) / Interrupt Service Routine (ISR) lookup MP4 … to map the interrupt to the specific handling routine / ISR. 5(b) One mark per correct answer (Max 3) 3 Process state Reason running CPU time has been allocated and the process is being executed. The process is waiting (in the ready queue) for a slice of CPU time. It could run. // It has been displaced ready by a higher priority process and could otherwise still run. blocked The process is waiting for an I/O operation / some event to take place / be completed.
Q6 · The diagram shows a logic circuit
6 (a) The diagram shows a logic circuit. A Q S Z P B R C Complete the truth table for the given logic circuit. Show your working. Working space A B C P Q R S Z 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 [3] (b) (i) Complete the Karnaugh map (K-map) for the Boolean expression: A.B.C + A.B.C + A.B.C + A.B.C BC A 00 01 11 10 0 1 [2] (ii) Draw loop(s) around appropriate group(s) in the K-map to produce an optimal sum-of-products. [2] (iii) Write the Boolean expression from your answer to part b(ii) as a simplified sum-of-products. Do not carry out any further simplification. ........................................................................................................................................... ..................................................................................................................................... [2]
Mark scheme: 6(a) • One mark for working, (all four columns P, Q, R and S) 3 • One mark for first four rows of column Z • One mark for second four rows of column Z Working space A B C P Q R S Z 0 0 0 1 1 0 0 1 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 0 1 0 1 1 1 0 0 1 1 0 1 1 1 1 0 1 0 0 0 6(b)(i) Two marks if no errors present 2 One mark if only one error present BC 00 01 11 10 A 0 0 1 1 0 1 0 1 0 1 6(b)(ii) One mark for each correct loop (Max 2) 2 BC 00 01 11 10 A 0 0 1 1 0 1 0 1 0 1 6(b)(iii) One mark for each mark point (Max 2) 2 • One correct Boolean term with a + / OR sign • All Boolean terms and operators correct and no other terms present _ _ _ A.C + B.C + A.B.C
Q7 · Asymmetric encryption is a type of cryptography
7 (a) Asymmetric encryption is a type of cryptography. Identify one other type of cryptography. ................................................................................................................................................... ............................................................................................................................................. [1] (b) An organisation holds two asymmetric encryption keys, which they intend to use to receive secure transmissions. Explain how the organisation makes use of the two keys to receive a secure transmission. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [4]
Mark scheme: 7(a) One from 1 Symmetric (cryptography / encryption) Quantum (cryptography) 7(b) One mark per mark point (Max 4) 4 MP1 The two keys held by the organisation are a private key and a public key MP2 The organisation makes the public key available to anyone who wishes to send them secure transmissions // The sender obtains the organisation’s public key MP3 The sender uses the organisation’s public key to encrypt the message / plain text // The sender uses the organisation’s public key to turn the message into cipher text MP4 The organisation uses its private key to decrypt the message.
Q8 · State the purpose of the optimisation stage in the compilation of a program
8 (a) State the purpose of the optimisation stage in the compilation of a program. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [1] (b) Convert this Reverse Polish Notation (RPN) back to its original infix form: a b - c + c a - * d / ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [3] (c) The RPN expression: c a / b d – * b + is to be evaluated, where: a = 3, b = 16, c = 9 and d = 6. Show the changing contents of the stack as the RPN expression is evaluated. [4]
Mark scheme: 8(a) To improve the code by making it use minimum resources (CPU, memory/storage, time) // Answer by example: To improve 1 the code by • minimising program storage • minimising CPU time • minimising memory use • minimising program execution time (includes peripheral use as well as CPU) 8(b) One mark (a – b + c) 3 One mark * (c - a) One mark / d Complete answer (a – b + c) * (c - a) / d 8(c) One mark per ring (Max 4) 4 6 3 16 16 10 16 9 9 3 3 3 3 30 30 46
Q9 · Deep Learning is a form of Machine Learning
9 (a) Deep Learning is a form of Machine Learning. (i) State one example where Deep Learning is used. ........................................................................................................................................... ..................................................................................................................................... [1] (ii) Identify how Deep Learning can be made more effective. ........................................................................................................................................... ..................................................................................................................................... [1] (b) Describe the back propagation of errors method in Machine Learning. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [4]
Mark scheme: 9(a)(i) One from: 1 e.g. • Virtual assistants // AI Agents • Chatbots • Composing music • Self-driving cars • Natural language processing • Fraud detection • Image colouring // photograph enhancement • Visual/Image recognition/facial recognition • Text mining • Computer assisted translation • Large language models (LLMs) • Playing chess • Grading student exams • Weather forecasting 9(a)(ii) Use / introduce more hidden layers 1 9(b) One mark per mark point (Max 4) 4 MP1 Initial outputs are compared to expected outputs MP2 … weightings are adjusted to minimise the difference between actual and expected outputs MP3 Calculus is used to find the error gradient in the obtained outputs MP4 … the results are fed back into the neural network MP5 … weightings of each neuron / node are adjusted as a result of the feedback MP6 … the process repeats until results are more accurate
Q10 · An exception is an error that may cause a program to halt unexpectedly
10 An exception is an error that may cause a program to halt unexpectedly. (a) Describe how program termination due to an exception can be avoided. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [2] (b) Identify two possible causes of exceptions. 1 ................................................................................................................................................ ................................................................................................................................................... 2 ................................................................................................................................................ ................................................................................................................................................... [2]
Mark scheme: 10(a) One mark per mark point (Max 2) 2 MP1 Use an exception handling routine (to respond to unwanted / unexpected events when the program is running) MP2 Use of try … except / catch // Generate some form of error message 10(b) One mark per mark point (Max 2) 2 MP1 Coding errors MP2 User errors MP3 Hardware failure // Losing connection to a device e.g. a printer
Q11 · The table shows assembly language instructions for a processor that has one register, the…
11 The table shows assembly language instructions for a processor that has one register, the Accumulator (ACC). Instruction Label Opcode Operand Explanation LDM #n Load the number n to the ACC Load the contents of the location at the given LDD <address> address to ACC The address to be used is at the given address. LDI <address> Load the contents of this second address to the ACC. Add the contents of the given address to the ADD <address> ACC Subtract the contents of the given address SUB <address> from the ACC Store the contents of the ACC at the given STO <address> address Gives a symbolic address <label> to the <label>: <data> memory location with the contents <data> # denotes a denary number, e.g. #123 <label> can be used in place of <address> The current contents of memory are: Address Contents 150 26 300 86 420 150 Write assembly language code, using only the given instruction set to: • store the contents of location 300 as labelled variable A • store the contents of location 420 as labelled variable B • add the value stored in the address contained in variable B to the value contained in variable A • store the result in variable Answer. Show the initialisation and values of the variables A, B and Answer in the table provided. .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... .......................................................................................................................................................... Label Content [7]
Mark scheme: 11 One mark per mark point (Max 7) 7 MP1 LDD 300 seen MP2 Correct use of STO seen (at least once) MP3 Correct use of LDD 420 seen MP4 Correct use of LDI B MP5 Correct use of ADD A Opcode Operand LDD 300 STO A LDD 420 STO B LDI B ADD A STO Answer MP6 Correct labelling of three addresses A:, B: and Answer: MP7 Correct contents in A: and B: MP8 Correct value in Answer: Label Contents A: 86 B: 150 Answer: 112
Q12 · A stack has been implemented using pseudocode to store a maximum of 100 string items…
12 (a) A stack has been implemented using pseudocode to store a maximum of 100 string items using the global variables in the following table: Initialisation Identifier Data type Description value Base INTEGER pointer for the bottom of the stack 0 Top INTEGER pointer for the top of the stack -1 StackArray STRING 1D array to implement the stack [0:99] Max INTEGER maximum number of items in the stack 100 The value of Top is incremented each time a data item is added to the stack and decremented each time a data item is removed. If the stack is full, an appropriate error message is output. (i) Complete the pseudocode for the procedure to add a data item onto the stack. PROCEDURE Push(.........................................................................................................) IF Top < Max – 1 THEN Top ← ............................................................................................................... ...................................................................................................... ← NewData ELSE OUTPUT ............................................................................................................... ENDIF ENDPROCEDURE [4] (ii) Write pseudocode to input a new data item and add it to the stack using Push(). ........................................................................................................................................... ........................................................................................................................................... ........................................................................................................................................... ..................................................................................................................................... [2] (b) Explain the reasons why a stack is used when a recursive algorithm is executed. ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ................................................................................................................................................... ............................................................................................................................................. [3]
Mark scheme: 12(a)(i) One mark for each correctly completed line (Max 4) 4 PROCEDURE Push(NewData : STRING) IF Top < Max – 1 THEN Top Top + 1 StackArray[Top] NewData ELSE OUTPUT "Stack full; new data cannot be added" ENDIF ENDPROCEDURE 12(a)(ii) One mark per mark point (Max 2) 2 MP1 Input with variable, with or without prompt MP2 Procedure call for Push with parameter used matching input variable Example answer INPUT MyData CALL Push(MyData) 12(b) One mark per mark point (Max 3) 3 MP1 Stacks store data in Last In First Out (LIFO) / First In Last Out (FILO) order MP2 Each time a recursive algorithm calls itself data is pushed onto the stack MP3 When the recursive algorithm reaches its base case / starts to unwind MP4 … data is popped from the stack in the reverse order to which it was pushed onto it.
What you needed in this session
Cambridge’s own grade thresholds for 2025 Oct/Nov, Paper 3 · Variant 2. A higher threshold means an easier paper — the bar moves with how the cohort did.