State the name of each of the following computational thinking techniques.
Breaking a complex problem down into smaller problems.
Hiding or removing irrelevant details from a problem to reduce the complexity.
Was this exam question helpful?
Exam code: J277
State the name of each of the following computational thinking techniques.
Breaking a complex problem down into smaller problems.
Hiding or removing irrelevant details from a problem to reduce the complexity.
How did you do?
Was this exam question helpful?
The following table contains several definitions of terms that are used in Computer Science.
Letter | Definition |
|---|---|
A | Cleaning up data entered by removing non-standard characters |
B | Hiding or removing irrelevant details from a problem to reduce complexity |
C | Checking that the user is allowed to access the program |
D | Breaking a complex problem down into smaller problems |
E | Repeating elements of a program |
F | Converting one data type to another, for example converting an integer to a real number |
Write the letter of the definition that matches each keyword in each space.
Keyword | Letter |
|---|---|
Decomposition | |
Abstraction | |
Input sanitisation | |
Casting |
How did you do?
Was this exam question helpful?
A list of valid discount codes is shown below.
[NIC12B, LOR11S, STU12M, VIC08E, KEI99M, WES56O, DAN34S]
State one reason why a binary search would not be able to be used with this data.
How did you do?
Give the name of one searching algorithm that would be able to be used with this data.
How did you do?
Was this exam question helpful?
State one pre-requisite for a binary search algorithm.
How did you do?
Tick (✓) one box to identify the name of the sorting algorithm that splits data into individual items before recombining in order.
Bubble sort
Insertion sort
Merge sort
Choose your answer
Was this exam question helpful?
Students take part in a sports day. The students are put into teams.
Students gain points depending on their result and the year group they are in. The points are added to the team score.
The team with the most points at the end of the sports day wins.
Abstraction and decomposition have been used in the design of the sports day program.
Identify one way that abstraction has been used in the design of this program.
How did you do?
Identify one way that decomposition has been used in the design of this program.
How did you do?
Was this exam question helpful?
A program stores the following list of positive and negative numbers. The numbers need sorting into ascending order using a merge sort.
45 | 12 | -99 | 100 | -13 | 0 | 17 | -27 |
|---|
The first step is to divide the list into individual lists of one number each. This has been done for you.
Complete the merge sort of the data by showing each step of the process.

How did you do?
Once the numbers are in order, a binary search can be run on the data.
Describe the steps a binary search will follow to look for a number in a sorted list.
How did you do?
A linear search could be used instead of a binary search.
Describe the steps a linear search would follow when searching for a number that is not in the given list.
How did you do?
Was this exam question helpful?
A sample of data is shown in Fig. 4.
amber | house | kick | moose | orange | range | wind | zebra |
|---|
Fig. 4
Show the stages of a binary search to find the word zebra using the data shown in Fig. 4.
How did you do?
Was this exam question helpful?
Tick (✓) one box in each row to identify whether each statement about the insertion sort is true or false.
Statement | True (✓) | False (✓) |
|---|---|---|
The list of words is initially split into a sorted set and an unsorted set. | ||
The insertion sort uses a divide stage and then a conquer stage. | ||
The list of words must be in order before the insertion sort can start. | ||
Each word is inserted into the correct place in the array, one by one. | ||
The insertion sort will not work because the word “wall” appears twice. |
How did you do?
The sorted list of words is shown below.
flour | house | pumpkin | wall | wall |
|---|
Explain how a binary search would be used to try to find whether the word “house” appears in this list.
How did you do?
Was this exam question helpful?
Taylor has used computational thinking techniques to develop an algorithm.
Give two computational thinking techniques that Taylor could have used, and describe how.
How did you do?
Was this exam question helpful?
The following names of students are stored in an array with the identifier studentnames.
studentnames = ["Rob", "Anna", "Huw", "Emma", "Patrice", "Iqbal"]
Describe the steps that a linear search would take to find Anna in studentnames
How did you do?
Was this exam question helpful?
The names of students are sorted into ascending alphabetical order using an insertion sort.
Complete the following diagram to show the stages an insertion sort would take to complete this task.
Each row represents one pass of the insertion sort algorithm.
You may not need to use all empty rows.

How did you do?
Was this exam question helpful?
Elliott plays football for OCR FC.
He wants to create a program to store the results of each football match they play and the names of the goal scorers.
Elliott wants individual players from the team to be able to submit this information.
Define what is meant by abstraction.
How did you do?
Give one example of how abstraction could be used when developing this program in part (a).
How did you do?
Was this exam question helpful?
A library sorts their books based on a book code.
Show the steps that a merge sort would take to put the following list of book codes into ascending alphabetical order (from A to Z).
POE12 , BAC97 , FLY77 , JAV16 , TAL86 , AND18 , ZAR09 , HOP86
How did you do?
Explain one advantage of a merge sort compared to a bubble sort.
How did you do?
Was this exam question helpful?
Show how a binary search will be used to find the number 10 in the following data set:
1 2 5 6 7 10 20
How did you do?
Was this exam question helpful?
The student names for a team are stored in an array with the identifier theTeam
An example of the data in this array is shown:

A linear search function is used to find whether a student is in the team. The function:
• takes a student name as a parameter
• returns True if the student name is in the array
• returns False if the student name is not in the array
Complete the design of an algorithm for the linear search function.
function linearSearch(studentName)
for count = 0 to …………….….....……………
if theTeam[……………..…...…….………] == …………….….....…………… then
return …………….….....……………
endif
next count
return False
endfunctionHow did you do?
Was this exam question helpful?
A list of numbers is stored in the following order:
42, 17, 8, 31, 25, 14
Describe how the list would be sorted into ascending order using an insertion sort
You must show the list after passes 1, 2, 3 and 4, and then give the final sorted list
How did you do?
Was this exam question helpful?
A list of words is stored in the following order:
grape, apple, cherry, banana, fig, date
Show how the list would be sorted into alphabetical order using an insertion sort
You must show the list after passes 1, 2, 3 and 4, and then give the final sorted list
How did you do?
Was this exam question helpful?
A warehouse organises its inventory using product codes.
Show the steps that a merge sort would take to put the following list of product codes into ascending numerical order (from smallest to largest).
847 , 215 , 632 , 419 , 756 , 128 , 903 , 541
How did you do?
Was this exam question helpful?
A library organises its book collection using reference numbers.
Show the steps that a bubble sort would take to put the following list of reference numbers into ascending numerical order (from smallest to largest).
523 , 187 , 412 , 695 , 234 , 876 , 341 , 158
How did you do?
Was this exam question helpful?
A sports club records the scores of its members using player IDs.
Describe the steps that a bubble sort would take to put a list of player IDs into ascending numerical order (from smallest to largest).
742 , 315 , 628 , 891 , 456 , 203 , 567 , 134
How did you do?
Was this exam question helpful?
A program uses a file to store a list of words that can be used in a game.
A sample of this data is shown in Fig. 3.
|
|
|
|
|
|
Fig. 3
Show the stages of a bubble sort when applied to data shown in Fig. 3.
How did you do?
Was this exam question helpful?
An insertion sort algorithm is used to sort a dataset of game scores from smallest to largest
game_scores = [101, 110, 130, 50, 66]
To perform an insertion sort, a count-controlled loop must be used.
Describe the purpose of the count-controlled loop and give an example of what the loop would look like.
Purpose | |
|---|---|
Example |
How did you do?
Was this exam question helpful?
Describe the steps involved in performing a bubble sort on the list in Fig. 1. Show the state of the list after each complete pass through the list.
|
|
|
|
|
|
Fig. 1
How did you do?
Was this exam question helpful?
Explain why the removal of geographical accuracy in a city bus map is a necessary form of abstraction for a computer
How did you do?
Was this exam question helpful?
Justify the use of decomposition in a large-scale banking app, focusing on independent testing
How did you do?
Was this exam question helpful?
Analyse how abstraction and decomposition help when designing an algorithm to solve a problem
How did you do?
Was this exam question helpful?
A dataset of 1,000,000 items is unsorted.
Evaluate the effectiveness of using a binary search in this scenario
How did you do?
Was this exam question helpful?
Explain a situation where a linear search would be more efficient than a binary search, even when the list is sorted
How did you do?
Was this exam question helpful?
Explain why a merge sort is often preferred over a bubble sort when sorting a very large list, such as 10 million website users
How did you do?
Was this exam question helpful?