Wednesday 10 June 2026 – Afternoon
A Level Computer Science
H446/01 Computer Systems
Time allowed: 2 hours 30 minutes
You can use:
• a ruler (cm/mm)
* 1 8 8 4 8 5 9 5 0 4 *
• an HB pencil
Do not use:
• a calculator
* H 4 4 6 0 1 *
Please write clearly in black ink. Do not write in the barcodes.
Centre number Candidate number
First name(s)
Last name
INSTRUCTIONS
• Use black ink. You can use an HB pencil, but only for graphs and diagrams.
• Write your answer to each question in the space provided. If you need extra space use
the lined page at the end of this booklet. The question numbers must be clearly shown.
• Answer all the questions.
INFORMATION
• The total mark for this paper is 140.
• The marks for each question are shown in brackets [ ].
• Quality of extended response will be assessed in questions marked with an asterisk (*).
• This document has 28 pages.
ADVICE
• Read each question carefully before you start your answer.
© Cambridge OCR 2026 [601/4911/5] Cambridge OCR is an exempt Charity
DC (EV/CT) 376942/4 Turn over
, 2
1 BiDi Solutions is a software development company that creates software using high-level
programming languages.
(a) Complete the table to match the programming terms below to the correct definition.
if array for function while
Definition Term
A block of code that executes and
returns a value
A loop that will run code until a
condition is met
A fixed number of values of the
same data type stored under the
same identifier name
Will test a condition and executes
a block of code only if a specified
condition is true/false
A loop that will run code a fixed
number of times
[5]
© Cambridge OCR 2026
, 3
(b) Finding the average (mean) value of a sequence of numbers, and then counting how many
numbers are above the average, is a common task in data analysis.
The function countAboveAverage() takes a 1-dimensional array of numbers called data as a
parameter and will:
• find the average (mean) value of the sequence of numbers
• for each number in the sequence, check if it is above the average
• count and return how many numbers are above the average.
(i) Complete the function countAboveAverage() using pseudocode or program code.
function countAboveAverage(data)
sum = ............................................
for meanCount = 0 to data.length – 1
sum = sum + ............................................[meanCount]
next meanCount
mean = sum / ............................................
............................................ = 0
for aboveCount = 0 to data.length – 1
if data[aboveCount] > mean then
............................................ = numberAbove + 1
endif
next aboveCount
............................................ numberAbove
endfunction
[6]
© Cambridge OCR 2026 Turn over
, 4
(ii) An array is an example of a static data structure. A linked list is an example of a dynamic data
structure.
Give one advantage and one disadvantage of using a dynamic data structure instead of a static
data structure.
Advantage .........................................................................................................................................
..........................................................................................................................................................
Disadvantage ....................................................................................................................................
..........................................................................................................................................................
[2]
(c) BiDi Solutions create their software using the agile software development methodology.
Complete the description about the agile methodology using terms given in the table. Not all
terms are used.
individual extreme occasionally limited functions
rarely iterative flowcharts waterfall dash
sprints frequently runs stakeholder sequential
The agile methodology is a flexible and .................................................. approach to
software development.
It emphasises incremental progress, where requirements and solutions evolve through
a collaborative approach.
It is structured into short cycles, known as .................................................., which typically last
between 1– 4 weeks.
Agile methodologies deliver usable software .................................................. and
respond to .................................................. feedback.
[4]
© Cambridge OCR 2026
A Level Computer Science
H446/01 Computer Systems
Time allowed: 2 hours 30 minutes
You can use:
• a ruler (cm/mm)
* 1 8 8 4 8 5 9 5 0 4 *
• an HB pencil
Do not use:
• a calculator
* H 4 4 6 0 1 *
Please write clearly in black ink. Do not write in the barcodes.
Centre number Candidate number
First name(s)
Last name
INSTRUCTIONS
• Use black ink. You can use an HB pencil, but only for graphs and diagrams.
• Write your answer to each question in the space provided. If you need extra space use
the lined page at the end of this booklet. The question numbers must be clearly shown.
• Answer all the questions.
INFORMATION
• The total mark for this paper is 140.
• The marks for each question are shown in brackets [ ].
• Quality of extended response will be assessed in questions marked with an asterisk (*).
• This document has 28 pages.
ADVICE
• Read each question carefully before you start your answer.
© Cambridge OCR 2026 [601/4911/5] Cambridge OCR is an exempt Charity
DC (EV/CT) 376942/4 Turn over
, 2
1 BiDi Solutions is a software development company that creates software using high-level
programming languages.
(a) Complete the table to match the programming terms below to the correct definition.
if array for function while
Definition Term
A block of code that executes and
returns a value
A loop that will run code until a
condition is met
A fixed number of values of the
same data type stored under the
same identifier name
Will test a condition and executes
a block of code only if a specified
condition is true/false
A loop that will run code a fixed
number of times
[5]
© Cambridge OCR 2026
, 3
(b) Finding the average (mean) value of a sequence of numbers, and then counting how many
numbers are above the average, is a common task in data analysis.
The function countAboveAverage() takes a 1-dimensional array of numbers called data as a
parameter and will:
• find the average (mean) value of the sequence of numbers
• for each number in the sequence, check if it is above the average
• count and return how many numbers are above the average.
(i) Complete the function countAboveAverage() using pseudocode or program code.
function countAboveAverage(data)
sum = ............................................
for meanCount = 0 to data.length – 1
sum = sum + ............................................[meanCount]
next meanCount
mean = sum / ............................................
............................................ = 0
for aboveCount = 0 to data.length – 1
if data[aboveCount] > mean then
............................................ = numberAbove + 1
endif
next aboveCount
............................................ numberAbove
endfunction
[6]
© Cambridge OCR 2026 Turn over
, 4
(ii) An array is an example of a static data structure. A linked list is an example of a dynamic data
structure.
Give one advantage and one disadvantage of using a dynamic data structure instead of a static
data structure.
Advantage .........................................................................................................................................
..........................................................................................................................................................
Disadvantage ....................................................................................................................................
..........................................................................................................................................................
[2]
(c) BiDi Solutions create their software using the agile software development methodology.
Complete the description about the agile methodology using terms given in the table. Not all
terms are used.
individual extreme occasionally limited functions
rarely iterative flowcharts waterfall dash
sprints frequently runs stakeholder sequential
The agile methodology is a flexible and .................................................. approach to
software development.
It emphasises incremental progress, where requirements and solutions evolve through
a collaborative approach.
It is structured into short cycles, known as .................................................., which typically last
between 1– 4 weeks.
Agile methodologies deliver usable software .................................................. and
respond to .................................................. feedback.
[4]
© Cambridge OCR 2026