Oxford Cambridge and RSA
GCSE (9-1) Computer Science
Algorithms & Programming
J277/02
Topic: 2.1 Computational Thinking
Time allowed: 30 minutes
Centre number Candidate number
First name Last name
INSTRUCTIONS INFORMATION
Turn over
Section A: Definitions
1
Draw a line to match each Computational Thinking term to its correct definition.
[3]
Term
Abstraction
Decomposition
Algorithmic Thinking
Definition
Breaking a complex problem down into smaller, manageable parts.
Logical steps to solve a problem, identifying inputs, processes, and outputs.
Filtering out unnecessary details to focus on the essential features of a problem.
2
A sat-nav system calculates the fastest route from London to Manchester.

(a) Identify two pieces of information that are essential for the sat-nav to calculate the route.
[2]

(b) Identify two pieces of information that are irrelevant to the route calculation and should be removed through abstraction.
[2]
3
Define the term Decomposition.
[2]
Turn over
Section B: Structure Diagrams & Decomposition
4
A school is creating a computer program to manage a Sports Day.
The main program is called SportsDaySystem.

The system needs to do three main tasks:
  • Register Students (this involves InputName and AssignHouse).
  • Record Results (this involves EnterTime and CalculatePoints).
  • Display Winners (this involves ShowHouseWinner and PrintCertificates).
Draw a Structure Diagram to show how this system decomposes.
[5]
5
A developer is creating a mobile game called "Alien Attack".
Complete the Structure Diagram below by filling in the empty boxes to show the decomposition of the GameLoop module.

Branch 1: CheckPlayerInput
Branch 2: ................................................................. (Hint: Moving the characters)
Branch 3: ................................................................. (Hint: Checking if the player has died)
Branch 4: UpdateScore
[3]
6
Explain two benefits of using Decomposition when designing a large computer program.
[4]
Turn over
Section C: Algorithmic Thinking & Symbols
7
Algorithmic thinking involves identifying the Inputs, Processes, and Outputs of a system.
A program is being written to calculate the area of a rectangle.
Complete the table below.
[3]
Stage Data / Action
Input
Process
Output
8
Standard symbols are used to represent algorithms in flowcharts.
State the name of the flowchart symbol used for each of the following actions.
[4]
Action Flowchart Symbol Name
start()
count = count + 1
if score > 10
print(total)
9
A smart thermostat monitors the temperature of a house.
  • If the temperature is below 18°C, the heating turns on.
  • If the temperature is above 21°C, the heating turns off.
  • Otherwise, no change occurs.
Using Algorithmic Thinking, write a logical plan for this system using pseudocode.
[4]
10
Explain why Abstraction is necessary when creating a simulation of an aeroplane for a flight simulator game.
[3]
END OF QUESTION PAPER