Selection challenge
Lesson details
Learning outcome
I can build a program that uses selection using a set of project requirements.
Key learning points
- Software engineers are often given a set of project requirements that they have to turn into code to create a solution.
- A larger problem is decomposed into smaller subproblems to make it easier to solve.
- A flowchart or pseudocode is often used to design a system before it is created.
Keywords
Project requirements - the features, functions, and tasks that need to be completed for a project
Subproblem - a smaller section of a wider problem that has been decomposed to make solving the problem easier
Common misconception
All parts of a solution must be coded at the same time and tested that it works once coding has finished.
Individual subproblems can be approached separately and tested to ensure they work before moving onto the next part. It helps to know parts of a program work as intended.
Teacher tip
A checklst of subtasks is provided as an additional resource for this lesson. Encourage pupils to approach other programming tasks in a similar way to provide a means of keeping track of how they are decomposing problems.
Equipment
Pupils will need access to a device that can edit and run Python programs. Examples in this lesson use the RPF Code Editor https://oak.link/python-editor
Licence
Lesson video
Loading...
Prior knowledge starter quiz
6 Questions
Q1.What will the following logical expression evaluate to? (5+3/2) < 5 and 9+2 == 12
Q2.What will the following logical expression evaluate to? 7 == 8-2 or 9 > 6
Q3.What will the logical expression num == (8*3)/2 evaluate to if num = 12?
Q4.What will the logical expression age > (80/2) evaluate to if age = 40?
Q5. explain parts of code that are not obvious to someone else looking at your code.
Q6.An is the name given to a variable by a programmer.
Assessment exit quiz
6 Questions
Q1.What is a project requirement?
Q2.What is a subproblem?
Q3.What does a software engineer do?
Q4.A is a diagram that helps programmers plan how their program should work before they start coding.
Q5.What is decomposition in programming?
Q6.Why is it important to test a program after writing it?
To help you plan your 10 computer science lesson on: Selection challenge, download all teaching resources for free and adapt to suit your pupils' needs...
To help you plan your 10 computer science lesson on: Selection challenge, download all teaching resources for free and adapt to suit your pupils' needs.
The starter quiz will activate and check your pupils' prior knowledge, with versions available both with and without answers in PDF format.
We use learning cycles to break down learning into key concepts or ideas linked to the learning outcome. Each learning cycle features explanations with checks for understanding and practice tasks with feedback. All of this is found in our slide decks, ready for you to download and edit. The practice tasks are also available as printable worksheets and some lessons have additional materials with extra material you might need for teaching the lesson.
The assessment exit quiz will test your pupils' understanding of the key learning points.
Our video is a tool for planning, showing how other teachers might teach the lesson, offering helpful tips, modelled explanations and inspiration for your own delivery in the classroom. Plus, you can set it as homework or revision for pupils and keep their learning on track by sharing an online pupil version of this lesson.
Explore more key stage 4 computer science lessons from the Programming: selection unit, dive into the full secondary computer science curriculum, or learn more about lesson planning.