(Merged Question paper and marking scheme)
Tuesday 18 June 2024
Please write clearly in block capitals.
Centre number Candidate number
Surname
Forename(s)
Candidate signature
I declare this is my own work.
A-level
COMPUTER SCIENCE
Paper 2
Tuesday 18 June 2024 Afternoon Time allowed: 2 hours 30 minutes
Materials
For Examiner’s Use
For this paper you must have:
a calculator. Question Mark
1
Instructions
Use black ink or black ball-point pen. 2
Fill in the boxes at the top of this page. 3
Answer all questions. 4
You must answer the questions in the spaces provided. Do not write outside
5
the box around each page or on blank pages.
If you need extra space for your answer(s), use the lined pages at the end of 6
this book. Write the question number against your answer(s). 7
Do all rough work in this book. Cross through any work you do not want to
8
be marked.
9
Information 10
The marks for questions are shown in brackets.
11
The maximum mark for this paper is 100.
TOTAL
Advice
In some questions you are required to indicate your answer by completely
shading a lozenge alongside the appropriate answer as shown.
you want to change your answer you must cross out your original answer as
If
shown.
If you wish to return to an answer previously crossed out, ring the answer
you now wish to select as shown.
,A-level Computer Science Paper 2 - Key Areas to Revise
Paper 2 of A-level Computer Science focuses on practical problem-solving, algorithmic thinking, and applying
theoretical knowledge to solve real-world computing problems. It will test your ability to develop algorithms,
write code, analyze data structures, and apply programming concepts to solve problems. Below are the key areas
you should revise to excel in this paper:
1. Advanced Programming
Concepts:
Data Structures:
o Arrays and Lists, Stacks and Queues: Linked Lists, Trees and Binary Trees, Graphs:
Algorithms:
o Sorting Algorithms, Searching Algorithms: Dynamic Programming and Recursion &
Greedy Algorithms
2. Problem-Solving and Algorithm Design:
Developing Algorithms: Practice writing algorithms for problem-solving scenarios. Focus on breaking
down complex problems into smaller, manageable tasks, and designing efficient solutions.
Pseudocode and Flowcharts: Be proficient in writing pseudocode and flowcharts to represent your
algorithms. Practice converting pseudocode into actual code.
Error Handling: Review how to handle errors in programming, including exceptions and input validation.
Understand the importance of writing error-free and robust code.
Optimizing Algorithms: Study methods for improving the efficiency of algorithms. This could involve
reducing time or space complexity or using better data structures (e.g., using hash tables for faster
lookups).
3. Software Development Life
Cycle:
Development Phases: Understand the stages of software development, including requirement analysis,
design, implementation, testing, and maintenance.
Testing: Focus on writing and applying test cases to validate your programs. Practice writing unit tests
for individual functions and integration tests for whole programs. Be familiar with testing types (e.g.,
black-box, white-box testing).
Debugging: Learn how to debug code effectively. Practice using debugging tools and techniques like
setting breakpoints, inspecting variables, and stepping through code to locate and fix errors.
4. File Handling and Input/Output
Operations:
5. Databases and SQL:
Database Operations: Understand the basics of working with databases and SQL queries. Practice
writing SELECT, INSERT, UPDATE, DELETE queries.
Join Operations: Be able to join multiple tables and understand the differences between INNER JOIN,
LEFT JOIN, RIGHT JOIN, and FULL OUTER JOIN.
Database Design: Know how to design a simple database schema and apply normalization techniques
to reduce redundancy and improve data integrity.
SQL Functions: Understand and practice using aggregate functions like COUNT, AVG, SUM, and
GROUP BY in SQL queries.
IB/G/Jun24/G4003/E12 7517/2
, 2
Do not write
outside the
Answer all questions. box
0 1 Anti-virus software and user training are measures that can be used to reduce the
threat posed by viruses.
Describe four other measures that can be used to reduce the threat posed by
viruses.
[4 marks]
4
IB/G/Jun24/7517/2
, 3
Do not write
outside the
Turn over for the next question box
DO NOT WRITE ON THIS PAGE
ANSWER IN THE SPACES PROVIDED
Turn over ►
IB/G/Jun24/7517/2
, 4
Do not write
outside the
0 2 . 1 A digital camera takes photographs that are 4000 pixels wide by 3000 pixels tall and box
can contain up to 16 777 216 different colours.
Calculate the size of one image in megabytes.
[2 marks]
Answer megabytes
0 2 . 2 How many images, taken using the camera referred to in Question 02.1, could be
stored on a 256 gigabyte memory card?
You should assume that all of the storage space on the memory card is available to
store image data.
Round your answer down to the nearest whole number.
[1 mark]
Answer
IB/G/Jun24/7517/2
, 5
Do not write
outside the
When a digital camera takes a photograph, an array of photosensors produces box
analogue voltages representing the amount of light falling on each photosensor. An
analogue-to-digital converter then converts these analogue voltages into digital
values. These digital values are used to create the pixel data for the bitmap image.
0 2 . 3 Explain why the voltages produced by the photosensors are considered to be
analogue and why the pixel data is considered to be digital.
[2 marks]
Question 2 continues on the next page
Turn over ►
IB/G/Jun24/7517/2
, 6
Do not write
outside the
box
An image is 20 pixels wide by 30 pixels tall. The colour of each pixel is represented
using one byte.
Here is a row of data from the original image. The colour of each of the 20 pixels is
shown as a decimal value, with commas used to separate the data for the different
pixels:
24, 24, 24, 253, 254, 255, 76, 76, 76, 80, 82, 0, 0, 9, 223, 223, 224, 220, 76, 76
The image is to be compressed using Run Length Encoding (RLE). The RLE method
used will:
represent the length of a run using one byte
represent a colour using one byte.
In decimal, the RLE for the colour of the first four pixels would be:
3, 24, 1, 253
0 2 . 4 Calculate how much memory the row of pixels will take up before and after it has
been encoded using RLE.
[1 mark]
Memory before RLE (bytes)
Memory after RLE (bytes)
0 2 . 5 Comment on the effectiveness of the use of RLE to encode the row of pixels in
Question 02.4 and explain why this is the case.
[1 mark]
7
IB/G/Jun24/7517/2
, 7
Do not write
outside the
0 3 Figure 1 shows the organisation of part of a simple computer system. box
Figure 1
0 3 . 1 State the name of the bus labelled X in Figure 1.
[1 mark]
0 3 . 2 The data bus inside the computer uses synchronous parallel data transmission.
Describe what synchronous transmission is.
[1 mark]
Question 3 continues on the next page
Turn over ►
IB/G/Jun24/7517/2
, 8
Do not write
outside the
0 3 . 3 Peripherals, such as a keyboard or printer, are connected to the computer using a box
USB (Universal Serial Bus) connection. USB uses synchronous serial data
transmission.
Explain why serial transmission has been chosen to communicate with peripherals
connected to the computer and why parallel transmission is used by the data bus
inside the computer.
[3 marks]
0 3 . 4 The USB interface inside the computer is an example of an I/O controller.
Describe the role of an I/O controller.
[2 marks]
IB/G/Jun24/7517/2
, 9
Do not write
outside the
0 3 . 5 The computer’s address bus uses 36 wires/lines and each main memory location can box
hold a 16-bit data value.
In gibibytes, express the maximum amount of main memory that could be installed in
the computer, assuming that the CPU could access all of the memory using the
address bus.
You should show your working.
[2 marks]
Answer gibibytes
0 3 . 6 State an example of how the control bus is used when the processor stores data into
main memory.
[1 mark]
10
Turn over for the next question
Turn over ►
IB/G/Jun24/7517/2