SACE Stage 2 Digital Technologies study materials
SACE Stage 2 Digital Technologies study resources

SACE Stage 2 Digital Technologies: Computational Thinking

SACE Stage 2 Digital Technologies ยท Work through your exam, one topic at a time.

All guide sections

Computational Thinking

Core concepts

Computational thinking is the discipline of turning a messy problem into a form a machine can execute. Candidates must be fluent with decomposition (breaking a problem into smaller sub-problems), pattern recognition (spotting repeated structures or recurring cases), abstraction (removing detail that does not affect the solution while keeping what matters) and algorithm design (an ordered, unambiguous, finite sequence of steps). You should also be able to distinguish an algorithm from a program: the algorithm is the logic, the program is its expression in a language.

Control structures are examinable: sequence, selection (if/else, case) and iteration (counted loops, condition-controlled loops, and loops that traverse a collection). Know the difference between a pre-test loop (condition checked before the body, so it may run zero times) and a post-test loop (body runs at least once). Understand desk checking and trace tables: writing variable values after each step to prove an algorithm behaves correctly. Also know test data categories: normal, boundary and invalid/erroneous.

Traps

  • Confusing abstraction with simplification of the problem rather than of the representation; abstraction keeps the essential features and hides the rest.
  • Assuming a loop always executes; a pre-test loop with a false condition never runs.
  • Off-by-one errors in counted loops, and forgetting to update the loop variable (infinite loop).
  • Describing what the code does when asked to explain why a design choice was made.
  • Confusing a trace table (values over time) with a test table (inputs, expected and actual outputs).

Worked example

Algorithm: total โ† 0; for i from 1 to 5: total โ† total + i. Trace: after i=1 total=1; i=2 total=3; i=3 total=6; i=4 total=10; i=5 total=15. Rule of thumb: if you cannot trace it on paper with a table of variables, you do not yet understand it.