Community resourceWorksheet

OCR H446 2.1.4 Decisions, logical conditions and flow

Part 1 · H446 2.1.4 · Thinking logically

OCR H446 2.1.4 is about decisions that change the route through a solution, and about the boundary values where those decisions quietly go wrong. A community makerspace access policy gives students conditions to write, trace, repair and then extend.

Students will:

  • identify a genuine decision point and the condition that controls it
  • write a Boolean condition combining membership, training and an age threshold
  • repair a comparison operator that fails only at the boundary value
  • trace nested decisions and explain why one route is never reached
  • implement the access routes in Python and extend the rule with an alternative condition

Inside: 7 explanation cells, 1 multiple-choice question, 1 fill-in-the-blanks cell, 3 written answers, 1 Python task and 1 trace table. 19 marks, about 25 to 35 minutes.

Series: H446 2.1.4 · Thinking logically, part 1 of 1.

Shared by Coding PathwayVerified teacher

  • 14 cells
  • About 30 minutes
  • CC BY-SA 4.0
  • Shared 31 Aug 2026
  • Updated 3 Sept 2026

Preview

The whole resource, exactly as a class sees it. Answers and marking are held back.

Thinking logically: decisions, conditions and flow

A community makerspace decides whether a member can use equipment independently, with supervision, or not at all. Decisions require Boolean conditions and change the route through a solution.

By the end, you will be able to

  • identify genuine decision points;
  • construct precise simple and combined conditions;
  • trace true/false routes and boundary values;
  • explain how decisions affect reachability and outcomes.

Reactivate: AND requires both conditions; OR requires at least one; NOT reverses a Boolean.

A decision is controlled by a condition

Makerspace access decision routesmember?Truetrained ANDage >= 16?Trueunsupervised accessFalsesupervisedFalsedenied

member? and trained AND age >= 16? each produce True or False and select a route. “Choose a random tool” is an action, not a logical decision unless a condition tests the result.

A condition can control selection, such as IF…ELSE or a multiway SELECT/CASE, or iteration, such as whether a WHILE loop repeats. In every case, identify the decision point, write the precise logical condition, then follow the route or outcome it selects.

Trace with a condition table before following arrows. Boundary age 16 satisfies age >= 16; age 15 does not.

Worked route table

membertrainedageroute
FalseTrue18denied at first decision
TrueFalse18supervised
TrueTrue15supervised
TrueTrue16unsupervised

The second decision is unreachable for a non-member because flow already followed the denied branch.

Multiple choice1 mark

Which option is a logical decision point?

  • ADisplay the booking reference
  • BTest whether the user is a member
  • CGenerate a random identifier
  • DStore the current time
Written answer2 marks

Write a Boolean condition for unsupervised access: the person must be a member, trained, and at least 16.

Use recognisable OCR ERL, Python or clear Boolean notation.

Students type their answer here.

Guided boundary repair

Faulty condition: age > 16 when the policy says “aged 16 or over”. The fault affects exactly the boundary value 16. Correct it to age >= 16 and test 15, 16 and 17.

For combined conditions, change one input at a time. This reveals which part controls each route.

Trace table1 mark

Trace the routes and final access value.

Enter a value only when it changes. Follow the listing in order.

Use one row for each pass through the loop. Fill in a box only when that value changes on that row, and leave the rest blank.

AlgorithmExam reference language
  1. member = True
  2. trained = False
  3. age = 17
  4. access = "denied"
  5. if member == True then
  6. if trained == True AND age >= 16 then
  7. access = "independent"
  8. else
  9. access = "supervised"
  10. endif
  11. endif
  12. print(access)
Trace table with 7 columns
Rowmembertrainedageaccessmember == Truetrained == True AND age >= 16Output
1
2
3
Written answer3 marks

Explain why the independent assignment is not reached in the trace and state one change that would make it reachable.

Refer to the combined condition.

Students type their answer here.

Implement the decision routes

Return “denied” for a non-member, “independent” for a member who is trained and at least 16, and “supervised” for every other member.

Coding task5 marks
def access_route(member, trained, age):
    pass
Written answer4 marks

The laser cutter also requires either a supervisor present OR advanced training. Extend the logical rule in words or Boolean notation and explain how it changes one route.

Keep membership and age requirements explicit.

Students type their answer here.

Checkpoint

Complete the decision-and-flow explanation from memory. There is no answer bank, and correctness is withheld until teacher review.

Fill in the blanks4 marks
A Boolean expression evaluates to True or checkpoint gap 1. In checkpoint gap 2, its result chooses a route. In checkpoint gap 3, its result can decide whether another repetition occurs. The boundary value that first permits independent access here is age checkpoint gap 4.

Review your understanding

Before submitting, check that you can explain the main distinction in your own words, apply it in an unfamiliar context and justify the resulting behaviour or consequence.