wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

A1 Exam - C9 Algorithm design and problem Solving

Total questions: 107

Worksheet time: 2hrs 37mins

Name
Class
Date
1.

What is pseudocode?

a)

A way of describing a set of instructions in text form

b)

A specific programming language that all computers use

c)

A diagrammatic representation of a set of instructions

2.

What is a flowchart?

a)

A flowchart is a text-based way of designing an algorithm

b)

A flowchart is a specific programming language

c)

A flowchart is a diagram that represents a set of instructions

3.

What are the main ways that algorithms can be designed?

a)

Pseudocode

b)

Flowchart

c)

Structure Diagram

d)

Python

4.

When can algorithms be used?

a)

Only with computers

b)

To design a solution to any problem

c)

For programming

5.

What is important to remember when designing an algorithm?

a)

whether to use a flowchart or pseudocode

b)

the instructions are in the correct order

c)

that it must be easy to read

6.

What should be considered when designing an algorithm?

a)

If there is more than one way of solving the problem

b)

If the correct hardware is being used

c)

If the correct software is being used

7.
What's missing from this part of a flowchart?
a)
An Arrow
b)
A Line
c)
A Square
d)
A Diamond
8.
Identify a variable within this flowchart.
a)
INPUT
b)
Start
c)
12
d)
RESULT
9.
What would be the output of this flowchart if the student scored 89?
a)
Fail
b)
Pass
c)
Merit
d)
Distinction
10.

What does sequence mean?

a)

To create a pattern

b)

To do something in order

c)

To do something randomly

d)

To repeat something over and over again

11.

What does selection mean?

a)

Selection is following instructions in order.

b)

Selection is to repeat something over and over again

c)

Selection is when you have a choice of options

d)

Selection is choosing the best option

12.

What is iteration?

a)

This is choosing what to do next

b)

This means doing something in order

c)

It is repeating something over and over again.

d)

It is writing pseudocode

13.

When can algorithms be used?

a)

Only with computers

b)

To design a solution to any problem

c)

For programming

14.

What is important to remember when designing an algorithm?

a)

whether to use a flowchart or pseudocode

b)

the instructions are in the correct order

c)

that it must be easy to read

15.

What should be considered when designing an algorithm?

a)

If there is more than one way of solving the problem

b)

If the correct hardware is being used

c)

If the correct software is being used

16.

(a)   is the first step of the PDLC(Product Development Life Cycle), where the problem is broken down and understood.

17.

(a)   is the second step of the PDLC, where the solution to the problem is planned in detail.

18.

(a)   is the third stage of the PDLC, where the planned solution is implemented.

19.

(a)   is the fourth stage of the PDLC, where you test to see if your solution solves the problem as intended.

20.

A software engineer sets out to find all the requirements and inputs to a particular problem he is trying to solve. Which phase of the PDLC is he in?

a)

Analysis

b)

Coding

c)

Testing

d)

Design

21.

What is the name for the process of hiding complex details and showing only what is necessary?

a)

Abstraction

b)

Decomposition

c)

Requirements

d)

Development

22.

What is the name of the process of splitting a problem into smaller, manageable chunks?

(a)  

23.

True or false?

When defining a problem it is important to include as many details as possible, regardless of the context, just in case they are needed.

a)

True

b)

False

24.

Which of these is a correct statement?

a)

Requirements dictate the essential inputs to a program.

b)

Requirements dictate the essential outputs of a program.

c)

Requirements dictate optional inputs to a program.

d)

Requirements dictate optional outputs from a program.

25.

What is the first stage of thinking procedurally?

a)

Taking the problem defined by the user and breaking it down into its constituent parts

b)

Developing a solution

c)

Testing a solution

d)

Analysing a problem

26.

What is the purpose of problem decomposition?

a)

To make complex problems easier to solve and more manageable by allowing tasks to be divided between a group of people according to individual skill sets.

b)

The process of separating ideas from specific instances of those ideas at work

c)

Any situation in the design or programming of a system when you would want more than one thing happening at the same time

d)

Letting the problem rot away

27.

State another name given to top-down design.

a)

Stepwise refinement

b)

Problem Recognition

c)

Divide and Conquer

d)

Problem Decomposition

e)

Backtracking

28.

What is the purpose of top-down design?

a)

Continually break problems down into subproblems until each subproblem can be represented as a single task and ideally a self-contained subroutine.

b)

The analysis of a large amount of data in a data warehouse to provide new information.

c)

An algorithm for finding a complete solution. This is a refined brute force methodology. It is a very general algorithm for finding all (or some) solutions to computational problems.

d)

The process of separating ideas from specific instances of those ideas at work

29.

What are the benefits of using top-down design?

a)

Problems can be solved and modules developed by different people

b)

Tasks can be tested separately. Modules are self-contained

c)

Uses abstraction to create algorithms and prototypes

d)

Wireframe designs are required before development can take place

30.

What sort of problems is top-down design suited to?

a)

Large, complex problems

b)

Small, complex problems

c)

Large, simple problems

d)

Small, simple problems

31.

What is the second stage of thinking procedurally in software development?

a)

Identifying components of a solution

b)

Taking the problem defined by the user and breaking it down into its constituent parts

c)

Developing a solution

d)

Testing a solution

32.

What are the lowest level subproblems in top-down design in code?

a)

self-contained modules or subroutines

b)

Machine Code

c)

High Level Language

d)

Flow Chart

33.

What do software developers need to consider when recombining components of a solution?

a)

The order in which subroutines are executed, and how they interact with each other, based on their role in solving the problem.

b)

Who the original author of the component was

c)

Will they fit together

34.

What must a software developers do before designing a subroutine to solve a particular problem?

a)

See whether it is possible for an already existing subroutine or module to be used.

b)

Taking the problem defined by the user and breaking it down into its constituent parts

c)

Developing a solution

d)

Testing a solution

e)

Analysing a problem

35.

State advantages of utilising reusable components.

a)

More reliable than newly-coded components, as they have already been tested.

b)

This saves time, money and resources.

c)

Accuracy of the algorithms used

d)

Effectiveness of algorithm in managing the cache

e)

Content can be loaded without delay

36.

Which of these are pillars of computational thinking?

a)

Decomposition: Breaking down data, processes, or problems into smaller, manageable parts

b)

Pattern Recognition: Observing patterns, trends, and regularities in data

c)

Abstraction: Identifying the most important details and discarding the unimportant aspects to make the solution manageable

d)

Algorithm Design: Developing the step by step instructions for solving this and similar problems

e)

functional programming - treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data

37.

Which of these is an example of decomposition?

a)

Break a program into procedures and functions

b)

Break a complex problem into modules using top down design

c)

Use a pre-written library of procedures and functions to perform operations such as sorting and searching.

d)

Subdividing a problem into smaller tasks that different teams can work on independently.

e)

Ignore the colour of a player token in a snakes ladder game model.

38.

Define the term computational thinking

a)

Using a computer

b)

Developing an algorithm to solve a problem

c)

Making a computer use artificial intelligence

d)

Google is computational thinking

e)

Solving a problem using a computer

39.

Identify which statement describes algorithmic thinking

a)

Thinking like a computer

b)

Writing binary numbers

c)

Identifying the steps involved in solving a problem

d)

Identifying what problems need to be solved

40.

What are algorithms used for?

a)

To plan out the solution to a problem

b)

As a platform to program a solution

c)

To test a solution to a problem

41.

What does an algorithm need to be (choose more than 1)

a)

Clear instructions

b)

Exact

c)

Easy to understand

d)

Complex

42.

What should be considered when designing an algorithm?

a)

If there is more than one way to solve the problem

b)

If the correct hardware is being used

c)

If the correct software is being used

43.
Syntax errors are always spotted when the program is compiled or interpreted.
a)
True
b)
False
44.
Which of these pseudocode statements is an example of a logic error?
a)
FOR x=0 TO 10 STEP -1
b)
FOR x=0 TO 10 STEP 1
c)
FOR x=10 TO 0 STEP -1
d)
FOR x=0 TOO 10 STEP 1
45.
A program won't run if there is a logic error.
a)
False
b)
True
46.
Which of these pseudocode statements contains a syntax error?
a)
pounds = pence x 100
b)
pounds = pence * 100
c)
pounds = pence / 100
d)
pounds = 100 / pence
47.
Which statement best describes logic errors?
a)
An error in a program that causes it to produce incorrect ouputs but not a crash.
b)
An error in a program that causes it to crash.
c)
An error in the program caused by mis-spelt instructions.
d)
An error in a program caused by hardware failure.
48.

Which of the algorithms illustrates unbounded iteration?

a)

Algorithm 1

b)

Algorithm 2

49.

Which of the algorithms illustrates bounded iteration?

a)

Algorithm 1

b)

Algorithm 2

50.

Look at the Algorithm Below. In the corresponding Trace Table, what value should 'A' be?

a)

1

b)

3

c)

5

d)

7

51.

Look at the Algorithm Below. In the corresponding Trace Table, what value should 'B' be?

a)

1

b)

3

c)

5

d)

7

52.

Look at the Algorithm Below. In the corresponding Trace Table, what value should 'D' be?

a)

11

b)

13

c)

8

d)

1

53.

What is the purpose of using a Trace table?

a)

Planning before writing a program

b)

To help debug a program

c)

Check for spelling mistakes

d)

Understand the program more

54.

The trace table will contain two columns: (a)   and Output.

55.

This loop will repeat (a)   times

56.

The trace table will contain three columns: n, (a)   , and Output.

57.
What does this symbol represent?
a)
Start
b)
Sub
c)
Decision
d)
Process
58.
What is an algorithm?
a)
A problem
b)
A solution to a problem
c)
The steps that are taken to solve a problem
d)
The words to enter when typing
59.

Abstraction

a)

looking for similarities among and within problems

b)

Mental processes and strategies that include: decomposition, pattern matching, abstraction, algorithms

c)

creating step-by-step algorithms

d)

Reducing information and detail to focus on essential characteristics.

e)

Breaking problems into smaller, more manageable problems.

60.

To create a procedure, you open Scratch and click on__ and then __.

a)

variable, make variable

b)

my blocks, make a block

c)

sound, add music

d)

event, green flag

61.

Breaking a complex problem down into smaller problems and solving each one individually.

a)

Decomposition

b)

Abstraction

c)

Pattern Recognition

d)

Algorithmic Design

62.

Create a program with the following algorithm?

a)
b)
c)
d)
63.
The practice of taking someone else’s work or ideas and passing them off as one’s own.
a)
Citation
b)
Bibliography
c)
Plagiarism
d)
Newton's Law
64.

What is multi-media?

a)

A combination of two or more forms of media

b)

One form of media

c)

No media used

d)

Text only

65.
You have to create a slideshow where slides enter from the top.  what effect is needed
a)

Animation

b)

Transition

c)

Audio

d)

Graphics

66.
Adding special effects to move objects on and off a slide during a slide show
a)
Animation
b)
Transition
c)
Audio
d)
Graphics
67.

__ is a very useful design tool that allows you to create a plan for your presentation.

a)

Layout

b)

Animation

c)

Images

d)

Storyboard

68.

What is the main problem with this presentation design?

a)

Too much text

b)

Not enough contrast

c)

Not enough main ideas

d)

Text not appropriately aligned

69.

Which of the following is an example of a good presentation design.

a)
b)
c)
d)
70.

_______ is ready-made button for defining hyperlink on a slide

a)

Objects

b)

Transition

c)

Action Button

d)

Play

71.

What is the best tool to design the presentation such that the user can move from 1st slide to other slides or play some sound with a single click?

a)

Use Action Buttons

b)

Use Navigation Tools

c)

Use Page Up / Down keys

d)

Use Slide Show

72.
What is pseudocode?
a)
Simplified programming language, that is not a specific language
b)
Complicated programming language
c)
Simple programming language, which is linked to a specific language
d)
A type of cheese
73.
What flowchart symbol does this represent?
a)
Input/Output
b)
Start/End
c)
Decision
d)
Process
74.
What is this symbol?
a)
Decision
b)
Input/Output
c)
Start/End
d)
Process
75.

What is an algorithm?

a)

Patterns and trends used to solve a problem

b)

A set of step-by-step instructions to resolve a problem

c)

A programming language

76.

What are algorithms used for?

a)

To plan out the solution to a problem

b)

As a platform to program a solution

c)

To test a solution to a problem

77.

Which of these is NOT an algorithm?

a)

Following recipe instructions

b)

Working out how an engine works

c)

Tying your shoelaces

d)

Making a cup of coffee

78.

What does an algorithm need to be (choose more than 1)

a)

Clear instructions

b)

Exact

c)

Easy to understand

d)

Complex

79.

When can an algorithm be used?

a)

Only with computers

b)

For programming

c)

To design a solution to any problem

80.

What should be considered when designing an algorithm?

a)

If there is more than one way to solve the problem

b)

If the correct hardware is being used

c)

If the correct software is being used

81.

You are at the yellow arrow, pointing in the direction indicated. How would you move to fill in the 2 black squares?

a)

Straight, Turn right, Straight x 1, Fill Square, Straight x 2, Turn left, Straight x 1, Fill Square

b)

Straight x 2, Turn right, Straight x 1, Fill Square, Straight x 2, Turn left, Straight x 1, Fill Square

c)

Straight x 2, Turn right, Straight x 1, Fill Square, Straight x 2, Turn right, Straight x 1, Fill Square

d)

Straight x 2, Turn right, Straight x 1, Fill Square, Straight x 2, Turn left, Straight x 2, Fill Square

82.

What is a flowchart?

a)

A diagram that represents a set of instructions

b)

A high-level language that has specific syntax

c)

A way of describing a set of instructions that doesn’t use specific syntax

83.

Does this algorithm have a branch?

a)

Yes

b)

No

84.

Which flowchart shape is this?

a)

Decision Box

b)

Input / Output box

c)

Process box

d)

Start / Stop box

85.

Which flowchart shape is this?

a)

Decision Box

b)

Input / Output box

c)

Process box

d)

Start / Stop box

86.
What would be the output of this flowchart if the student scored 89?
a)
Fail
b)
Pass
c)
Merit
d)
Distinction
87.

What does sequence mean?

a)

To create a pattern

b)

To do something in order

c)

To do something randomly

d)

To repeat something over and over again

88.

What does selection mean?

a)

Selection is following instructions in order.

b)

Selection is to repeat something over and over again

c)

Selection is when you have a choice of options

d)

Selection is choosing the best option

89.
What is the Output if the user enters:
Yes
a)
Leave umbrella at home
b)
Take an umbrella
90.
What is the Output if the temperature is:
19
a)
Below Freezing
b)
Above Freezing
91.

What will happen if the user gets their details wrong?

a)

Checks how many times they have tried

b)

They get another try

92.

What will happen if the user's book return is late?

a)

Sends them an SMS (text)

b)

Does not send them an SMS (text)

93.

What are the steps to create an algorithm?

a)

Design a solution for each sub-problem, Combine the solutions to solve the original problem, Test and refine the algorithm, Understand the problem

b)

Understand the problem, Break down the problem into smaller sub-problems, Design a solution for each sub-problem, Combine the solutions to solve the original problem, Test and refine the algorithm.

c)

Break down the problem into smaller sub-problems, Combine the solutions to solve the original problem, Test and refine the algorithm, Understand the problem

d)

Understand the problem, Design a solution, Test the algorithm, Implement the algorithm, Refine the algorithm

94.

Why are algorithms important in problem-solving?

a)

Algorithms are not important in problem-solving.

b)

Algorithms make problem-solving more complicated.

c)

Algorithms are only useful for simple problems.

d)

Algorithms provide step-by-step instructions to solve problems.

95.

True or False: An algorithm is a step-by-step procedure to solve a problem.

a)

An algorithm is a random guess

b)

False

c)

True

d)

An algorithm is a mathematical equation

96.

What is the first step in creating an algorithm?

a)

Define the problem

b)

Test the algorithm

c)

Write the code

d)

Analyze the data

97.

What is the purpose of pseudocode in algorithm design?

a)

To test the efficiency of the algorithm in a specific programming language.

b)

To create a visual representation of the algorithm.

c)

To provide a high-level description of the algorithm's logic without being tied to a specific programming language.

d)

To write code that can be directly executed by a computer.

98.

What are the advantages of using algorithms in programming?

a)

Systematic approach to problem-solving, improved efficiency, and code reusability.

b)

Increased security, better error handling, and optimized resource utilization.

c)

Less code maintenance, improved readability, and enhanced debugging.

d)

Faster execution time, reduced complexity, and increased scalability.

99.
Which type of lists or data sets are linear searching algorithms used for?
a)
Unsorted lists or data sets
b)
Sorted lists or data sets
100.
Select the best description to explain what a linear search algorithm is.
a)
Put the elements in order, check each item in turn.
b)
Put the elements in order, compare with the middle value, split the list in order and repeat.
c)
Elements do not need to be in order, check each item in turn.
d)
Elements do not need to be in order, compare to the middle value, split the list in order and repeat
101.

Select the best description to explain what a binary search algorithm is.

a)

Put the elements in order, check each item in turn.

b)

Put the elements in order, compare with the middle value, split the list in order and repeat.

c)

Elements do not need to be in order, check each item in turn.

d)

Elements do not need to be in order, compare to the middle value, split the list in order and repeat

102.

This loop will repeat (a)   times

103.

The trace table will contain three columns: n, (a)   , and Output.

104.

The trace table will contain two columns: (a)   and Output.

105.

What is the purpose of using a Trace table?

a)

Planning before writing a program

b)

To help debug a program

c)

Check for spelling mistakes

d)

Understand the program more

106.

Look at the Algorithm Below. In the corresponding Trace Table, what value should 'D' be?

a)

11

b)

13

c)

8

d)

1

107.

Look at the Algorithm Below. In the corresponding Trace Table, what value should 'B' be?

a)

1

b)

3

c)

5

d)

7