NEW
Font size
WorksheetsNEW 2.1 Computational Thinking
Total questions: 43
Worksheet time: 22mins
Using a flowchart to design an algorithm is an example of what?
Thinking concurrently
Thinking logically
Thinking abstractly
I don't know
When designing systems, it is important to consider what aspects are important to solve the problem and what are not. What is this known as?
Reality
Programming
Abstraction
Implementation
How would an architectural drawing of a house differ from reality?
The colour of the paint
Size and dimensions of the house
Location of entrances and exits
Location and size of windows
What do we mean when we talk about decision points in a program?
Any point in a program when processing and calculations are performed
Any point where the program can take an optional route based on a condition
Any point in a program when it outputs data
Any point in a program when a user is asked for input
Which computational thinking skills can be described as, 'identifying the preconditions of a system, the inputs, outputs and reusable components'?
Thinking abstractly
Thinking logically
Thinking ahead
Thinking procedurally
A charity concert is being planned. Which of the following would NOT be considered a 'pre-condition' before deciding on a suitable venue?
Genre of musical artists (e.g. rock, pop, dance)
Estimated number of attendees
Will the concert be held inside or outside
Estimated noise level of concert
What is the purpose of a structure diagram?
To explain the steps of a coded solution in structured English
Break a problem down to show the order of program modules
To show the steps of an algorithm
To show the attributes and methods of a class
What is described as, 'anything which will be required to go into a system in any form in order for it to operate as intended'?
Processing
Outputs
Inputs
Concurrency
What can be described as, 'anything which exits a system in any form in order for it to operate as intended'?
Inputs
Processing
Outputs
Concurrency
What can be described as, 'Any condition which pre-exists the suggested solution'?
Inputs
Solution preconditions
Concurrency
Variables
Which of the following would be a benefit of caching a web page on users local computer?
You can see the latest version of the web page without an Internet connection.
You would always have the most up to date version of that web page
It would prevent hacking of that web page
Speed up retrieval and display of the webpage on subsequent visits
When creating a structure diagram using top-down modular design what do the lowest level leaf nodes end up becoming in the finished program?
Screen designs
Variables and constants
Modules, procedures and functions
Classes
A program is written to ask the user for a number. It generates this many random numbers in the range 0-100. If any number generated was greater than 90 it outputs 'higher number generated'. Where is a decision being taken in this program?
Generating the random numbers
Asking the user to input a number
Outputting the string 'higher number generated'
Checking the generated number is greater than 90
In which situation may it not be possible to determine the order of steps needed to solve a problem?
The problem may be highly event-driven and non-sequential in nature
The problem might be poorly defined
The problem might be to large or to small
The problem might involve object orientation
What is meant by the term 'abstraction'?
A simplified programming language used in program design
Getting to a solution through the clear definition of the steps needed
Breaking a problem down into smaller sub-problems
Including the necessary details and leaving out the unnecessary details
Which of the following is an output for an online cinema booking system?
Seat selection
Choice of film
Payment details
Booking confirmation email
Which of the following is an input for an online cinema booking system?
E-tickets
Booking confirmation email
Choice of film
Text alert
Which of the following is NOT a benefit of reusable library routines when programming?
Routines are already compiled, and therefore tested and error-free
Routines may be used multiple times
They might not be the most efficient way of solving a problem
Saves work and time for programmers shortening the overall development
Which of the following is a benefit of concurrent processing?
Reduced memory usage
Lower overheads of managing multiple processes
Increased program throughput
Potential slow down if many users request a similar action
A program asks the user their age. If the user is 18 or over it outputs 'adult', otherwise it outputs, 'child'. Which condition should be used to achieve this?
IF age > 18 THEN
IF age <= 18 THEN
IF age < 18 THEN
IF age >= 18 THEN
What can be described as, 'the temporary storage of program instructions or data which have already been used and may be needed again'?
Caching
Pipelining
Pre-conditions
Concurrency
A program is written to calculate the volume of a cube. The variables in this program are width, length, height and volume. Identify the output variable.
Volume
Length
Width
Height
What computational thinking skill includes breaking a problem down?
Thinking procedurally
Thinking abstractly
Thinking ahead
Thinking logically
What can be described as, 'when more than one process is running from a program at once, with each process in turn being given a slice of the processor time'?
Concurrent Processing
Multithreading
Object Orientation
Parallel processing
Which of the following is a benefit to the end user of software programs using reusable components?
The programs run more quickly
Increased file storage capacity
It can create a recognisable interface between applications
They use less memory
Why is the computational skill of abstraction needed?
It allows more than one programmer to work on a solution at a time
To make sure we focus on the details that are important and ignore those that are not
It allows you to write object orientated programs
It allows you to write assembly language programs
A robot is installed with a light sensor, microphone, camera and speakers. Which of these would be considered an output device of the robot system?
Microphone
Speaker
Light sensor
Camera
What diagram can we use to help us break down a problem in order to identify the components of a problem?
Flow diagram
Class diagram
Directed graph
Structure diagram
A graphics artist for a 2D platform game decides that collectable apples will all be a solid green colour. Which aspect of computational thinking has been applied?
Thinking concurrently
Decomposition
Algorithmic thinking
Abstraction
How might abstraction be used when actually programming a solution?
When deciding if you should use a procedure or a function
When deciding on your choice of programming language
When writing programmer comments
Deciding what variables & objects will and will not be needed
A robot is installed with a display panel screen, lighting, motors and a temperature sensor. Which of these would be considered an input to the robot system?
Motors
Lighting
Temperature sensor
Display panel screen
You have been asked to design an abstract model for a satellite navigation program. Out of the following details, which you recommend removing from the finished model?
Names of roads and motorways
Location of petrol and service stations
Wooded areas illustrated with trees
Place names of towns and cities
What can be described as, 'When more than one processor is executing separate instructions at the same time'?
Multithreading
Parallel processing
Object orientation
Concurrent processing
Why is it not always possibly to apply the concepts of concurrency to a problem?
The problem might too complex
The problem does not require pipelining
The problem might be written using object orientated techniques
The problem may not lend itself to two actions happening at the same time
Why is abstraction needed when designing a computer game?
To help keep development on track and delivered on time
To make sure development doesn’t get slowed down by unnecessary detail
To make sure a balance is achieved between fun and realism
All of these are valid reasons
Which computational thinking skill can be described as, 'identifying decision points for branching or iteration'?
Thinking ahead
Thinking logically
Thinking procedurally
Thinking abstractly
Which computational thinking skill can be described as, 'more than one thing happening at the same time'?
Thinking ahead
Thinking procedurally
Thinking concurrently
Thinking logically
Which of the following programming concepts results in decisions needing to be taken?
Creating objects from classes
Declaring variables and constants
Selection and iteration
Calling procedures and functions
Which of the following is NOT a benefit to a programmer of using reusable program components?
They are pre-tested
Can make use of expertise already deployed to code components
The program is quicker to learn
Saves time, effort, money
Which of the following is a benefit of concurrency?
It allows you to write object orientated code
It helps you to break down a problem into smaller sub-problems
It can speed up the solution
It helps you work out what detail is and isn't needed in your solution
Which of the following statements is describing the skill of, 'thinking abstractly'?
Breaking a problem down
Identifying decision points for branching or iteration
Identifying the preconditions of a system, the inputs, outputs and reusable components
Removing unnecessary details and including only the relevant details
Which computational thinking skill describes the consideration of all the inputs and outputs required for a system before it is implemented?
Thinking procedurally
Thinking ahead
Thinking concurrently
Thinking abstractly
Which of the following statements is describing the skill of, 'decomposition'?
Breaking a problem down
Identifying decision points for branching or iteration
Identifying the preconditions of a system, the inputs, outputs and reusable components
Removing unnecessary details and including only the relevant details
