wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

CS Edexcel Topic 1 Computational Thinking EVERYTHING!!

Total questions: 76

Worksheet time: 38mins

Name
Class
Date
1.

Computational thinking is an approach to what?

a)

Problem solving

b)

Creating algorithms

c)

Identifying the techniques needed

d)

Understanding the complexity of a problem

2.

Why is algorithmic thinking important in problem-solving?

a)

It makes problem-solving more confusing

b)

It helps develop creative solutions

c)

It provides a systematic approach

d)

It slows down problem-solving

3.

Can all problems be solved computationally?

a)

True

b)

False

4.

Which technique in computational thinking involves detailed, step-by-step procedures?

a)

Decomposition

b)

Algorithms

c)

Abstraction

d)

Pattern Recognition

5.

What is the purpose of using top-down diagrams in decomposition?

a)

To merge multiple problems into one

b)

To breakdown problems into smaller components

c)

To avoid addressing subproblems individually

d)

To make problems more complicated

6.

Which computational thinking technique focuses on simplifying complex problems?

a)

Pattern recognition

b)

Decomposition

c)

Abstraction

d)

Algorithms

7.

What is the crucial element of algorithmic thinking?

a)

Creative thinking

b)

Chaotic thinking

c)

Illogical thinking

d)

Logical thinking

8.

What role does abstraction play in computational thinking?

a)

To complicate problems

b)

To focus on irrelevant details

c)

To simplify complex problems

d)

To ignore important elements

9.

What does decomposition achieve in the process of problem-solving?

a)

It makes problems more complex

b)

It avoids addressing subproblems individually

c)

It combines subproblems into a larger problem

d)

It breaks down large problems into manageable ones

10.

What is the primary purpose of subprograms in programming?

a)

To make debugging more challenging

b)

To create more complex code

c)

To slow down the programme execution

d)

To enhance code organisation and reusability

11.

Tick all examples of abstraction from the four possible examples below

a)

The “London Underground” map

b)

A google map in satellite mode

c)

An arial map of “Piccadilly Circus”

d)

A Google map in traffic mode

12.
What should you do when writing an algorithm?
a)
Focus on the output of the program
b)
Break the problem down into logical steps
c)
Use syntax to show all details
d)
Write it directly in a programming language
13.
Why is it important to practice writing algorithms?
a)
To understand programming languages better
b)
To improve problem-solving skills
c)
To create complex software applications
d)
To memorise syntax rules
14.

What is Pseudocode?

a)

A programming language

b)

A detailed algorithm

c)

A high-level description of an algorithm

d)

A type of software

15.
What is pseudocode primarily used for?
a)
To create a visual flowchart
b)
To write algorithms in a language-independent manner
c)
To code directly in a programming language
d)
To document software bugs
16.
What is the primary advantage of writing algorithms in pseudocode rather than in a specific programming language?
a)
Pseudocode can be easily understood by anyone regardless of programming knowledge.
b)
Pseudocode is faster to execute than any programming language.
c)
Pseudocode uses complex syntax that requires advanced programming skills.
d)
Pseudocode is limited to specific programming languages.
17.
Which of the following is NOT a keyword commonly used in pseudocode?
a)
IF
b)
PRINT
c)
LOOP
d)
ELSE
18.
What is the purpose of using flowcharts?
a)
To write code directly
b)
To visually represent the logic of a program
c)
To store data in a database
d)
To create user interfaces
19.
What is the main benefit of using flowcharts when writing algorithms?
a)
They provide a visual representation of the logic
b)
They are written in a specific programming language
c)
They require no practice to understand
d)
They are more complex than pseudocode
20.

A flowchart is a diagram that represents a process or algorithm using (a)   .

21.

In a flowchart, what does this symbol represent?

a)

Decision

b)

Input / Output

c)

Terminator

d)

Process

22.

In a flowchart, what does this symbol represent?

a)

Decision

b)

Input / Output

c)

Terminator

d)

Process

23.

In a flowchart, what does this symbol represent?

a)

Decision

b)

Input / Output

c)

Terminator

d)

Process

24.

In a flowchart, what does this symbol represent?

a)

Decision

b)

Input / Output

c)

Terminator

d)

Process

25.

What is the main purpose of testing a program?

a)

To speed up the execution of the program

b)

To add more features

c)

To make the program look good

d)

To ensure it meets the needs of the end-user

26.

What type of error is harder to detect because the program compiles and runs but produces unexpected results?

a)

Runtime error

b)

Syntax error

c)

Logic error

d)

Design error

27.

Which type of error occurs when the code does not follow the rules of the programming language?

a)

Logic error

b)

Runtime error

c)

Syntax error

d)

Compilation error

28.

Which of the following is a strategy that tests only the inputs and outputs of a program?

a)

White box testing

b)

Acceptance testing

c)

Black box testing

d)

Alpha testing

29.

What is the purpose of white box testing?

a)

To ensure that the algorithm functions correctly without focusing on inputs and outputs

b)

To test the program against the requirements of the user

c)

To check for syntax errors in the code only

d)

To evaluate how the program handles invalid inputs

30.

Name a common example of a runtime error

a)

Incorrect assignment statement

b)

Dividing by zero

c)

Incorrect syntax

d)

Incorrect output

31.

What is a trace table used for?

a)

To list all the syntax errors found

b)

To outline the user interface design

c)

To identify what the final output will be

d)

To document the outputs and variables during a dry run

32.

What does acceptance testing ensure?

a)

The program is free of syntax errors

b)

The program meets the user's requirements

c)

The code is optimised for performance

d)

The program has no logic errors

33.

During which phase should testing be carried out?

a)

Only at the end of development

b)

Ongoing throughout the development process

c)

Before the program is provided to the end user

34.

What is an example of a logic error?

a)

Missing a closing bracket

b)

Assigning a variable incorrectly

c)

Using the wrong formula for calculation

d)

Forgetting to declare a variable

35.

What is an example of a syntax error?

a)

Missing a closing bracket

b)

Assigning a variable incorrectly

c)

Using the wrong formula for calculation

d)

Forgetting to declare a variable

36.

What is the purpose of alpha testing?

a)

To ensure the program runs faster

b)

To gather user feedback on the interface

c)

To find all syntax errors

d)

To test the program under real-world conditions

37.

What is the purpose of beta testing?

a)

To test the program under everyday conditions

b)

To gather feedback from real users before final release

c)

To ensure the code meets syntax rules

d)

To check for logic errors in the code

38.
What is the main characteristic of a linear search algorithm?
a)
It checks each item one by one until it finds a match.
b)
It requires the data to be sorted before searching.
c)
It always finds the item in the middle of the data set.
d)
It divides the data set into halves repeatedly.
39.
What must be true about the data set for a binary search to work?
a)
It must have a maximum of 10 items.
b)
It must be ordered.
c)
It must contain only numbers.
d)
It must be unsorted.
40.
Which search algorithm is more efficient for large data sets?
a)
Linear search
b)
Binary search
c)
Both are equally efficient
d)
Neither is efficient
41.
In a linear search, what happens if the item is not found by the end of the data set?
a)
It automatically switches to a binary search.
b)
The algorithm starts over from the beginning.
c)
The algorithm stops and indicates the item was not found.
d)
The search continues indefinitely.
42.
When performing a binary search, what do you do if the middle item is higher than the search item?
a)
You swap the positions of the items.
b)
You start a linear search from that point.
c)
You discard the upper half of the data set.
d)
You discard the lower half of the data set.
43.
How does a binary search determine which half of the data to search next?
a)
By reversing the order of the data set.
b)
By randomly selecting an index to check.
c)
By comparing the search item with the middle item.
d)
By checking the first item of the array.
44.
What is a key advantage of using a binary search over a linear search?
a)
It uses less memory.
b)
It can find items faster in a sorted data set.
c)
It works with unsorted data sets.
d)
It is easier to implement.
45.
Which of the following best describes the process of a binary search?
a)
It checks every item in the data set.
b)
It narrows down the search area by half each time.
c)
It requires multiple iterations through the entire data set.
d)
It uses a fixed number of comparisons regardless of data size.
46.
What is the purpose of the 'found' flag in both search algorithms?
a)
To count the number of comparisons made.
b)
To signal when the item has been located.
c)
To track the position of the item in the array.
d)
To indicate whether the algorithm should continue searching.
47.
Which statement best describes the efficiency of a binary search compared to a linear search?
a)
Linear search is generally faster for large data sets.
b)
Binary search can be faster due to its divide-and-conquer approach.
c)
Linear search requires sorted data to function effectively.
d)
Binary search examines every element in the data set.
48.
What does the bubble sort algorithm do when it compares two elements?
a)
It duplicates the smaller element
b)
It adds them together
c)
It removes the larger element
d)
It checks if they are in the correct order
49.
In the bubble sort algorithm, what happens when two items are in the wrong order?
a)
They are sorted automatically
b)
They remain in their positions
c)
They are deleted from the list
d)
They are compared and swapped if necessary
50.
What is the role of the temporary variable in the bubble sort?
a)
To hold a value during a swap
b)
To store the sorted array
c)
To count the number of swaps
d)
To compare two elements
51.
What is the initial comparison made in a bubble sort?
a)
Any two random elements
b)
The last two elements of the list
c)
The middle elements of the list
d)
The first two elements of the list
52.
What happens if the bubble sort algorithm does not make any swaps during a pass?
a)
It concludes that the array is sorted
b)
It starts the sorting process again
c)
It removes duplicates from the array
d)
It adds more elements to the array
53.
Which of the following is NOT a characteristic of the bubble sort algorithm?
a)
It is an intelligent sorting algorithm
b)
It can sort numbers and strings
c)
It requires multiple passes for accuracy
d)
It compares and swaps elements as needed
54.
What is the primary function of the bubble sort algorithm?
a)
To sort data by repeatedly comparing and swapping adjacent elements if they are in the wrong order.
b)
To sort data by dividing it into smaller sections and sorting each section individually.
c)
To sort data by comparing all elements at once and arranging them in order.
d)
To sort data by using a randomised approach without any comparisons.
55.
What is the first step in the merge sort algorithm?
a)
To sort the items in descending order
b)
To compare the items in the array
c)
To split the data into individual items
d)
To merge the sorted pairs into a single array
56.
In the merge sort process, what do we do after splitting the data into pairs?
a)
We sort the pairs in ascending order
b)
We merge all pairs into one list
c)
We compare all items in the list
d)
We discard the larger items
57.
What is the final outcome of the merge sort algorithm?
a)
A list sorted in descending order
b)
A list that is randomly ordered
c)
A list sorted in ascending order
d)
A list with duplicate items removed
58.
How does the merge sort algorithm compare to simpler sorting methods?
a)
It is less efficient for small data sets
b)
It is more efficient as data sets grow larger
c)
It requires more memory than bubble sort
d)
It is slower for all sizes of data sets
59.
Why is the merge sort algorithm considered a 'stable' sorting algorithm?
a)
It is faster than all other algorithms
b)
It maintains the relative order of equal elements
c)
It sorts items in descending order
d)
It does not use any comparisons
60.

What do we do with the sorted pairs once they are formed in a merge sort?

a)
We discard them if they are sorted
b)
We merge them into larger sorted lists
c)
We keep them separate until the end
d)
We sort them again in pairs
61.

What is one way to evaluate the efficiency of an algorithm?

a)

By the number of lines of code

b)

By the time it takes to execute

c)

By the programming language used

62.

Why might comparing algorithms based on time taken not be useful?

a)

Computers are getting slower

b)

Hardware and processing power is improving in computers

c)

Algorithms are all the same speed

d)

Time is not a measurable factor

63.

Which is more efficient - linear or binary search?

a)

Linear

b)

Binary

64.

What is the more efficient strategy with search and sort algorithms?

a)

Divide and conquer

b)

Compare in order

65.

Which is the more efficient sorting algorithm?

a)

Bubble sort

b)

Merge sort

66.

Which logic gate is shown here?

a)

OR

b)

NOT

c)

AND

d)

NAND

67.

What will this gate's output be?

a)

0

b)

1

68.

What will this gate's output be?

a)

0

b)

1

69.

What will this gate's output be?

a)

0

b)

1

70.

Choose the correct circuit for the following expression: P = (A OR B) AND (NOT C)

a)

b)

c)

71.
What gate is this table for?
a)

AND

b)

OR

c)

NOT

72.
A truth table lists every possible combination of input and the resulting output
a)
True
b)
False
73.

Which gate inverts the input signal?

a)

NOT

b)

OR

c)

NAND

d)

AND

74.
What gate is this table for?
a)
AND
b)
XOR
c)
OR 
d)
NOT
75.

What would the OUTPUT(x) be in the following scenario:

A = 1

B = 0

C= 0

a)

0

b)

1

76.

What is the output Y of this logic cricuit if A = 1, B = 1, and C = 1

a)

0

b)

1