Eduqas A500QS 1.8: Program construction
The free BugBot lessons that teach this point, a robot to try it on, and the past-paper questions that test it.
What it covers
At GCSE you met local and global variables (F4.3) and the tools of an IDE (F6.6). At A level you need two ideas for every variable, its scope and its lifetime, the reasons local variables are good practice, and how the debugging tools of an IDE find the errors that scope mistakes cause.
- Scope and lifetime
- Shadowing, and changing a global
- Why local variables are good practice
- Debugging tools
Or do it in the simulator, with tasks that mark themselves
Lessons that teach it
- A1.5 Scope, lifetime and debugging in an IDE Programming techniques and object-oriented programming
Local and global variables, why locals are good practice, and breakpoints, stepping, watches and tracebacks. - A1.10 Project: the behaviour controller Programming techniques and object-oriented programming
Get past a wall to the dock with prioritised behaviour classes, a controller that aggregates them, and an exception to finish. - A6.5 Backus-Naur Form and syntax diagrams Theory of computation
Production rules, syntax diagrams, a grammar for robot programs, recursive descent, and why BNF can describe what a regex cannot. - A10.7 Programming languages and translators Operating systems, software and translators
Machine code, assembly and imperative high-level languages, the Little Man Computer, and choosing an assembler, compiler, interpreter or… - A10.8 Stages of compilation, linkers and loaders Operating systems, software and translators
Lexical analysis, syntax analysis, code generation and optimisation, then static and dynamic linking and the loader. - A15.1 How your A level is assessed Exam preparation
The papers and the project for OCR H446, AQA 7517 and Eduqas A500QS, the assessment objectives, and a timing plan built with integer… - A15.2 Command words and levels of response Exam preparation
What each command word asks for, how extended answers are marked in levels, and a marker that levels answers with regular expressions. - A15.3 Trace tables and hand-tracing Exam preparation
Tracing loops, recursion and Little Man Computer programs without slips, and a binary search that prints its own trace table. - A15.4 Pseudocode in the exam languages Exam preparation
OCR's exam reference language and AQA's pseudo-code side by side with Python, the traps in translating, and a stack class that brings the… - A15.5 Writing algorithms and code in the exam Exam preparation
Planning before writing, how code is marked, the standard algorithms to know by heart, and Dijkstra's algorithm driving the robot. - A15.6 Pre-release material and skeleton programs Exam preparation
Getting to know a skeleton program before the exam, the questions asked about it, and making exam-style changes to one. - A15.7 Calculation and theory questions Exam preparation
Number representation, floating point, Boolean logic, state machines and complexity answered quickly and checked. - A15.8 A revision plan and mixed practice Exam preparation
Mapping the specification, retrieval, spacing and interleaving, and a spaced repetition scheduler for the whole course.
Try it on a robot
The task from A1.5 Scope, lifetime and debugging in an IDE, running here. Change the program and press Run.
The specification is Eduqas's own document; this page says which of our lessons teach point 1.8 and is not endorsed by the board.