0% found this document useful (0 votes)
55 views10 pages

Teaching Notes 4 Asal It

The document outlines a unit plan for teaching algorithms and flowcharts. It includes 4 lessons that cover input, output, and processes; conditional branching; looping; and procedures/subroutines. Each lesson includes learning intentions, success criteria, keywords, potential misconceptions and how to address them, lesson starters, main activities, and plenary ideas. Homework and assessment ideas are also provided.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views10 pages

Teaching Notes 4 Asal It

The document outlines a unit plan for teaching algorithms and flowcharts. It includes 4 lessons that cover input, output, and processes; conditional branching; looping; and procedures/subroutines. Each lesson includes learning intentions, success criteria, keywords, potential misconceptions and how to address them, lesson starters, main activities, and plenary ideas. Homework and assessment ideas are also provided.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

4 Algorithms
and flowcharts
Unit plan
Session Outline of lesson content Resources
4.1 Input, output, processes Be able to read, correct and Worksheet 4.1 Fill in the gaps
write algorithms using input, Worksheet 4.2 Trace the algorithm
output and processes.
Coursebook questions 1–8
Coursebook Practical Activity 4.01–4.03
Coursebook exam-style questions 1–3
Workbook Tasks 4.1–4.2
4.2 Conditional branching Be able to read, correct Conditional branching presentation
and write algorithms using Coursebook questions 9–13
conditional branching.
Coursebook Practical Activity 4.04
Workbook Tasks 1.4, 1.7
4.3 Looping Be able to read, correct Worksheet 4.3 Write a loop
and write algorithms Coursebook questions 14–19
using looping.
Coursebook Practical Activity 4.05–4.07
Coursebook exam-style questions 4, 5, 7
Workbook Tasks 1.3, 1.5, 1.6, 1.9,
1.10, 1.11
4.4 Procedures / Be able to read, correct Worksheet 4.4 People subroutines
subroutines and write algorithms using Coursebook questions 20–25
subroutines.
Coursebook Practical activities 4.08-4.10
Coursebook exam-style questions 6, 8
Workbook Task 1.8

BACKGROUND KNOWLEDGE

• Learners may have some experience of reading or identifying algorithms, most likely as
flowcharts or algorithms.
• Learners may have encountered control through the use of robotics, for example, making a turtle
move around an area.

1 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

4.1 Input, output, processes


LEARNING INTENTIONS

Learning intentions Success criteria

• Understand what an algorithm is. • Define the term algorithm.


• Be able to read, edit and create algorithms • Follow an algorithm and give the output.
using input, output and process.
• Edit an algorithm to perform a new task.
• Create an algorithm using input, output and
processes.

KEY WORDS

assignment: giving a variable a value


concatenate: to join two strings together
flowchart: a set of symbols put together with commands that are followed to solve a problem
identifier: the name given to a variable, or subroutine
increment: add 1 to something
input: a user puts data into an algorithm
integer division: where only the whole number is given from a division
modulus division: when the remainder is given from a division
process: an action performed to some data to make a change
pseudocode: a syntax-less language that is used to convey an algorithm
variable: a space in the memory of a computer, that has an identifier, where you can store data; this
data can be changed

Common misconceptions
Misconception How to elicit How to overcome
Statements to add to variables Ask learners to create programs Show example programs and
can be written as var + 1 instead that require this type of process. remind learners about how to
of var = var + 1 do it when they are creating
algorithms.
The difference between string Ask learners to create programs Show example programs
and identifiers, i.e. use of that require string and and remind learners about
speech marks. variable outputs. the difference when they are
creating algorithms.

2 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

Lesson starters
1 Follow the flowchart (10 min)
Learning intention: To follow an algorithm.
Preparation: Create a presentation slide with a list of instructions for learners to follow; e.g. a series of
actions to perform (stand up, turn around, sit down, clap your hands, etc.)
Description: Learners have to follow the instructions. These could tell them to do something such as log
onto the computers, or write something, or sing a song, etc. but there needs to be a series of instructions
that follow one after the other. Repeat this using pseudocode in place of flowcharts.
What to look out for: Learners jumping steps in the algorithm.

2 Create a flowchart (10 min)


Learning intention: To understand how to create an algorithm.
Preparation: Provide learners with a written description of an algorithm that makes use of inputs, outputs
and basic processes.
Description: Ask learners to create a flowchart for the algorithm. Ask learners to share their algorithms and
then create a central one using all of their elements. Repeat this using pseudocode in place of flowcharts.

3 Follow the algorithm (10 min)


Learning intention: To be able to follow an algorithm.
Resources: Worksheet 4.2 Trace the algorithm.
Description: Give learners a pseudocode algorithm and trace table, ask them to complete the trace
algorithm for the given data.

Main activities
1 Reverse a program (20 min)
Learning intention: To create a flowchart.
What this activity is good for: Practising the creation of flowcharts, following algorithms.
Preparation: Prepare an algorithm written in a programming language, or possibly in software such
as Scratch.
Description: Give learners a short computer program written in code, and ask them to reverse engineer a
flowchart from the program. Repeat this using pseudocode in place of flowcharts.
Differentiation ideas: To support learners, provide them with a structure for the flowchart with some
elements completed, and gaps for them to complete.
To challenge confident learners, ask them to then extend the algorithm to perform additional functions.

2 Creating algorithms in Scratch (60+ min)


Learning intention: To create an algorithm to take input, produce outputs and perform processes.
What this activity is good for: Algorithmic thinking, resilience, independence.
Preparation: Provide support material on how to perform actions on Scratch.
Description: Introduce learners to algorithms using Scratch. Show them how to take inputs, produce
outputs and do simple processes. Ask learners to create some simple programs such as moving characters,
taking inputs of names, etc.

3 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

Differentiation ideas: To support learners, provide them with instructions on how to use Scratch, provide
further descriptions of the program required by breaking it down further.
To challenge confident learners, ask them to explore further functions in the software to add
additional features.

Plenary ideas
1 Spot the error (10 min)
Preparation: Provide an example program with error within.
Description: Show learners a description of an algorithm and a flow chart or algorithm for it that
includes at least one error. Ask learners to test the algorithm to find the error and suggest the correction.
Repeat this using pseudocode in place of flowcharts.

2 Order the algorithm (10 min)


Preparation: Provide an example program out of order.
Description: Give learners pseudocode statements for a program along with a description of it, and ask
learners to work in pairs to put the program into the correct order.

3 Fill in the gaps (10 min)


Resources: Worksheet 4.1 Fill in the gaps.
Description: Ask learners to read the description of a pseudocode algorithm and fill in the missing
statements.

Homework idea
Give learners a description of a program to create an algorithm for; this could be a flowchart of a program such
as on Scratch.

Assessment idea
Learners can be asked to create algorithms, edit an algorithm to make it perform a different task, follow
an algorithm and either state the output or complete a trace table, and identify where there are errors in an
algorithm and correct these errors.

4.2 Conditional branching


LEARNING INTENTIONS

Learning intentions Success criteria

• Understand the purpose of and • Trace an algorithm that uses conditional branching.
function of conditional branching.
• Write an algorithm that uses conditional branching.
• Draw a flowchart that makes use of conditional
branching.
• Correct an algorithm that uses conditional branching.

4 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

KEY WORDS

comparison: comparing two items of data resulting in true or false


construct: a selection statement or iteration statement
decision: a comparison is used to decide if code is run, or not
selection: a comparison is used to decide if code is run, or not

Common misconceptions
Misconception How to elicit How to overcome
When using multiple conditions Ask learners to trace algorithms Run through the algorithms with
learners may confuse incorporating multiple learners. Show them the rules
AND and OR. comparisons. for when one side or both is
true, etc.

Learners often confuse < with > Ask learners to trace algorithms, Repeatedly show learners which
and write algorithms using the part of the symbol is the smallest
comparisons. and which is the largest.

Lesson starters
1 Follow the algorithm (10 min)
Learning intention: To understand and follow conditional statements.
Preparation: Prepare a pseudocode program written using IFs.
Description: Ask learners to follow the algorithm, this should include an IF statement, for example, on age,
height, etc. to distinguish between learners and tell them to perform different actions, for example, some
learners may be told to stand up, others may be told to sit on the floor.

2 Match the inputs with the outputs (10 min)


Learning intention: To follow a pseudocode algorithm.
Preparation: Write a pseudocode algorithm that takes data as input, and produces an output; for example,
takes the height, width and depth of a cube and outputs the volume. Make a list of the different inputs
into the system, and the outputs that they produce, but out of order.
Description: Show learners the algorithm and the list of inputs and outputs. Ask learners to work out which
outputs match the inputs.

Main activities
1 Card selection (15 min)
Learning intention: To understand how conditional branching works.
What this activity is good for: Practical application of theory.
Resources: A deck of playing cards, conditional_branching.ppt
Description: Ask each learner to take one card from the pack. Show learners the first slide and ask them
to follow the instructions based on their card. Repeat, giving learners a new card each time, for each
algorithm.

5 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

2 Creating conditional branching statements (60+ min)


Learning intention: To understand conditional branching and be able to write pseudocode algorithms
containing conditional branching.
What this activity is good for: Practically applying theory, resilience
Description: Show learners how to add conditional branching in a specific software, e.g. Scratch. Ask
learners to create a series of programs increasing in complexity that require the use of conditional
branching.
Differentiation ideas: To support learners, let them start with simpler problems, and provide them with
some structure to complete to begin with then gradually increase the complexity and reduce the support.
To challenge confident learners, provide them with larger problems that require a mixture of statements.

Plenary ideas
1 Correct the algorithm (10 min)
Preparation: Prepare a pseudocode algorithm including conditional statement with at least one error in it.
Description: Give learners a description of what a pseudocode algorithm should do and an example
flowchart. Ask learners to find the error(s) and suggest corrections.

2 Order the algorithm (10 min)


Preparation: Prepare a pseudocode algorithm using conditional statement with lines mixed up.
Description: Give learners the pieces of the pseudocode algorithm and a description of what the algorithm
should do. Ask learners to put the algorithm pieces in order.

Homework ideas
Give learners a description of a program for them to create an algorithm for.
Ask learners to create an A5 guide to algorithms including the basics and conditional branching.

Assessment idea
Include questions asking learners to follow algorithms with conditional branching to work out the output.
Questions can include finding errors in an algorithm and correcting them, as well as completing an algorithm
and creating an algorithm from a description.

4.3 Looping
LEARNING INTENTIONS

Learning intentions Success criteria

• Understand the role of looping in • Be able to trace an algorithm that includes


algorithms. looping.
• Be able to write an algorithm that includes looping.
• Be able to correct an algorithm that uses looping.
• Be able to write an algorithm using nested loops.

6 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

KEY WORDS

condition-controlled loop: a loop that runs based on a condition, not the number of times it will run
count-controlled loop: a loop where you know the number of times it will run
FOR loop: a count-controlled loop
iteration: to repeat; a loop in code
loop: code that is repeated
WHILE loop: a condition-controlled loop that runs while the condition is true

Common misconceptions
Misconception How to elicit How to overcome
Learners may think that a loop Ask learners to trace algorithms Show learners how to run the
stops as soon as the stopping with loop conditions. algorithm line by line and when
condition is met, instead of the condition is checked.
running the rest of the code in
the loop and then checking the
condition.

Lesson starters
1 Follow the algorithm (10 min)
Learning intention: To understand the function of looping.
Preparation: Use an example of an algorithm that includes a loop and physical actions for learners
to perform.
Description: Ask learners to trace the algorithm and perform the actions that it tells them to.

2 Pick the correct answer (10 min)


Learning intention: To understand the function of looping.
Preparation: Provide a description of a problem that a program has been created to solve, for example,
change the x and y coordinates of a game character based on the input. Give four example programs that
attempt to solve the problem, but where only one of them is correct.
Description: Show learners the description of the program and four example programs, learners need to
work out which program meets the description. Include programs with nested loops.

Main activities
1 Write a loop (15 min)
Learning intention: To understand how repeated code can be written as a loop.
What this activity is good for: Practical application of theory, algorithmic thinking.
Resources: Worksheet 4.3 Write a loop.
Description: Give learners an algorithm with a set number of repeated statements, e.g. Worksheet 4.3
Write a loop. Ask learners to rewrite the algorithm using a loop.

7 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

Differentiation ideas: To support learners, give them questions to prompt their algorithm development, e.g.
finding out how many times the data repeats.
To challenge confident learners, provide more complex algorithms where the iteration is harder to identify
and successfully convert.

2 Continuous repetition (60+ min)


Learning intention: To understand the use of loops in algorithms.
What this activity is good for: Practical implementation of theory.
Description: Introduce loops using forever loops in software such as Scratch. Ask learners to create
events that repeat forever, e.g. moving a character around a screen. Build on this looping by introducing
conditional loops in software such as Scratch, for example, looping until a specific action or input
takes place.
Differentiation ideas: To support learners, provide them with programs that need conditions adding, with
the remainder of the program already implemented, and gradually reduce the support with each program.
To challenge confident learners, give them more challenging projects to incorporate loops into.

Plenary ideas
1 Convert the algorithm (10 min)
Description: Ask learners to convert a flowchart into pseudocode, or pseudocode into a flowchart.

2 Write the looping statement (10 min)


Description: Show learners a description of an algorithm, and an algorithm that is missing the looping
statement. Ask learners to work out what the looping statement should be.

Homework ideas
Give learners a description of a program that needs a loop and ask learners to write an algorithm for
the problem.
Ask learners to record any examples of real-life looping that they see or experience and bring them to share at
the next lesson.

Assessment ideas
Give learners questions that ask them to write programs that require loops.
You could also give learners programs that do not use loops, and ask them to implement them with loops.

8 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

4.4 Procedures / subroutines


LEARNING INTENTIONS

Learning intentions Success criteria

• Understand the role of a subroutine in an • Identify appropriate elements of an


algorithm. algorithm that can be put into a subroutine.
• Be able to create a subroutine. • Create a subroutine.
• Follow an algorithm with a subroutine.
• Correct an algorithm within a subroutine.
• Explain the purpose of a subroutine.

KEY WORDS

parameter: a piece of data that is sent to a subroutine


procedure: a type of subroutine that does not return a value to the main program
subroutine: a set of instructions that have an identifier and that are independent from the code; it is
called from another part of the program and returns control when it was finished

Common misconceptions
Misconception How to elicit How to overcome
The main algorithm continues Ask learners to trace Show learners how the algorithm
running at the same time as the algorithms. runs line by line and use diagrams
subroutines. to show the algorithm’s focus to
the subroutine and then back.

Lesson starters
1 Find the place for the subroutine call (10 min)
Learning intention: To understand how to call subroutines.
Preparation: Supply an example algorithm where the subroutine call is missing.
Description: Ask learners to work out where the subroutine call should go.

2 People subroutines (15 min)


Learning intention: To understand the role of subroutines.
Resources: Worksheet 4.4 People subroutines.
Description: Give learners roles as different subroutines, and one learner is the main program. Give each
learner their algorithm, i.e. subroutine. The main program learner needs to read one line of their code
which calls a subroutine, then the learner who has that subroutine performs its functions.
What to look out for: The person performing the main program may call a second subroutine before the first
has finished.

9 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020


CAMBRIDGE INTERNATIONAL AS & A LEVEL IT: TEACHER'S RESOURCE

Main activities
1 Convert a program into a subroutine (30+ min)
Learning intention: To understand how a program can be split into subroutines.
What this activity is good for: Practical implementation of theory.
Preparation: Supply an example of an algorithm that can be split into subroutines.
Description: Give learners an algorithm with several different sections that can be put into different
subroutines. Tell the learners what the subroutines should do and ask them to re-write the program using
subroutines.
Differentiation ideas: To support learners give them the lines of code that need to be put into each
subroutine and give them a structure to write their response within.
To challenge confident learners ask them to identify if any further elements could be split into subroutines.

2 Create a subroutine (60+ min)


Learning intention: To be able to implement subroutines.
What this activity is good for: Practical implementation of theory, resilience, algorithmic thinking.
Description: Show learners how to create a subroutine in software such as Scratch. Give learners a
description of an algorithm to create in the software and practically implement subroutines.
Differentiation ideas: To support learners, give them a partially complete program that they need to finish.
To challenge confident learners, give them extensions that include additional features making use of
subroutines, loops and conditional statements.

Plenary idea
1 Complete the algorithm (10 min)
Preparation: Provide an example algorithm with missing statements.
Description: Ask learners to complete the algorithm by working out what the missing statements are.

Homework idea
Give learners a description of a program that requires subroutines and ask them to create an algorithm for the
program: this could be on paper or using software such as Scratch.

Assessment ideas
Give learners algorithms and ask them to identify appropriate sections that could be written as subroutines.
Ask learners to add subroutines to an algorithm.
Ask learners to follow an algorithm that uses subroutines.

10 Cambridge International AS & A Level IT – Ellis © Cambridge University Press 2020

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy