Choose exam board for KS4 Computer Science (GCSE)
Choose exam board for KS4 English
Choose exam board for KS4 French
Choose exam board for KS4 Geography
Choose exam board for KS4 German
Choose exam board for KS4 History
Choose tier for KS4 Maths
Choose exam board for KS4 Music
Choose exam board for KS4 Physical education (GCSE)
Choose exam board for KS4 Religious education (GCSE)
Choose exam board for KS4 Spanish

      Programming project: selection I

      Lesson details

      Learning outcome

      I can design a solution to a problem that requires the use of selection.

      Key learning points

      1. When approaching a programming project there will be a set of requirements that the program must solve or meet.
      2. When approaching a programming project it is useful to follow the software development life cycle.
      3. When designing a program it is useful to develop pseudocode before creating the actual program code.

      Keywords

      • Pseudocode - a way of expressing an algorithm that is independent of a specific programming language

      • Software development cycle - defines the main stages of software development

      Common misconception

      Pseudocode is the same as a programming language and must follow a particular syntax.

      Pseudocode is independent of a specific programming language and does not need to follow any particular rules. All that is required is that a programmer can read the pseudocode and understand how to implement it.

      Teacher tip

      This is the first lesson of two project lessons which can be used to give pupils the opportunity to apply their understanding of the programming concept selection. It would be advisible if pupils have covered selection before attempting this project.

      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

      This content is © Oak National Academy Limited (2026), licensed on Open Government Licence version 3.0
      except where otherwise stated. See Oak's terms & conditions
      (Collection 2).

      Lesson video

      Loading...

      Prior knowledge starter quiz

      6 Questions

      Q1.
      A is a smaller section of a wider problem that has been decomposed to make solving the problem easier.

      Correct Answer: subproblem

      Q2.
      A f or pseudocode is often used to design a system before it is created.

      Correct Answer: flowchart, lowchart

      Q3.
      What does this flowchart symbol represent?

      An image in a quiz
      Correct answer: Decision
      Input/Output
      Process
      Start/Stop

      Q4.
      If x holds the value 10, what will be output for the following code?
      1234
      if x > 10: print("x is greater than 10") else: print("x is less than or equal to 10")
      Code colour

      x is greater than 10
      Correct answer: x is less than or equal to 10
      Error
      Nothing will be printed

      Q5.
      What does the following flowchart symbol represent?

      An image in a quiz
      Input/output
      Decision
      Correct answer: A subroutine/subprogram
      A process

      Q6.
      username has the value "Izzy" and password has "Dog1234". What will be output?
      1234
      if username == "Izzy": if password == "Fish4321": print("Access granted") print("...closing")
      Code colour

      Access granted
      Access granted...closing
      Correct answer: ...closing

      6 Questions

      Q1.
      is a way of expressing an algorithm that is independent of a specific programming language.

      Correct Answer: pseudocode, pseudo code, pseudo-code

      Q2.
      When approaching a problem that will be solved using code, it is useful to follow the development life cycle.

      Correct Answer: software

      Q3.
      At which stage of the software development life cycle do you start to create a program?

      Planning
      Analysis
      Design
      Correct answer: Development

      Q4.
      When writing pseudocode, keywords are often .

      Indented
      Highlighted
      Correct answer: Capitalised

      Q5.
      What comes next after the development stage of the systems development life cycle?

      planning
      design
      Correct answer: testing

      Q6.
      The following pseudocode is an example of __________: IF choice == "Sandwich": IF filling == "Cheese": price = 2.80 ELSE: price = 3.00 ELSE: price = 2.00

      sequence
      selection
      Correct answer: nested selection
      iteration

      To help you plan your 10 computer science lesson on: Programming project: selection I, download all teaching resources for free and adapt to suit your pupils' needs...