OCR · GCSE · Computer Science
Course version: J277 · Version from Sept 2022
Create, interpret, correct, complete, and refine algorithms using…
Full specification wording
Designing, creating and refining algorithms: Create, interpret, correct, complete, and refine algorithms using Pseudocode Flowcharts Reference language/high-level programming language
An algorithm is a precise sequence of steps that solves a problem.
Checked against the OCR J277 specification on .
- Point 3 of 5
- 4 key terms
Study notes
From the checked teaching notes for this specification point.
The idea
An algorithm is a precise sequence of steps that solves a problem. This statement covers five skills across four notations: pseudocode, flowcharts, OCR reference language and a high-level language such as Python. Creating means writing a correct algorithm from a problem description. Interpreting means reading an algorithm and stating its purpose or output. Correcting means finding and fixing logic errors. Completing means filling gaps so the algorithm works. Refining means improving an already working algorithm, for example by removing repeated code or handling invalid input. The same logic can be expressed in any notation: a count-controlled loop is 'for i = 1 to 10' in pseudocode, a loop-back arrow in a flowchart, and 'for i in range(1, 11):' in Python. Assessment focuses on whether the logic is correct and complete, not on decorative presentation.
What earns the marks
- Creating an algorithm means translating a problem description into ordered steps using sequence, selection and iteration in the required notation.
- Interpreting an algorithm means tracing it with sample data to state its purpose, outputs or behaviour, including edge cases.
- Correcting an algorithm means locating logic errors such as wrong conditions, off-by-one loop bounds or misplaced statements, then amending them.
- Completing an algorithm means supplying missing lines or symbols so that it fulfils the stated purpose without changing the given logic.
- Refining an algorithm means improving a working solution, for example by removing duplication, using a loop or function, or validating input.
- The same algorithm can be represented in pseudocode, a flowchart, OCR reference language or a high-level language, and translating between them preserves the logic.
Common mistakes and how to put them right
Confusing '=' with '==' in conditions.
Put it right: Is to use a single '=' for assignment and '==' for comparison in pseudocode and Python.
Using 1-based counting in Python loops.
Put it right: Is to remember range(1, 11) produces 1 to 10, and that Python indexes lists from 0.
Correcting an algorithm by rewriting it entirely.
Put it right: Is to make the smallest change that fixes the logic error while keeping the given structure and variable names.
Exam tips
- Trace algorithms line by line with a trace table, recording each variable after every change, to interpret output and spot errors.
- When completing code, check indentation and matching constructs such as ENDIF, NEXT or closing brackets before submitting.
- When refining, state what you changed and why, for example 'replaced repeated input statements with a while loop to validate the entry'.
Try the lesson
The start of the Designing, creating and refining algorithms: Create, interpret, correct, complete, and refine algorithms using Pseudocode Flowcharts Reference language/high-level programming language lesson, made from checked teaching notes for this specification point.
Have a go first
In a flowchart, which symbol is used to represent a decision?
Listen
An algorithm is a precise sequence of steps that solves a problem. This statement covers five skills across four notations: pseudocode, flowcharts, OCR reference language and a high-level language such as Python. Creating means writing a correct algorithm from a problem description. Interpreting means reading an algorithm and stating its purpose or output. Correcting means finding and fixing logic errors. Completing means filling gaps so the algorithm works. Refining means improving an already working algorithm, for example by removing repeated code or handling invalid input. The same logic can be expressed in any notation: a count-controlled loop is 'for i = 1 to 10' in pseudocode, a loop-back arrow in a flowchart, and 'for i in range(1, 11):' in Python. Assessment focuses on whether the logic is correct and complete, not on decorative presentation. A strong answer earns marks for these points. Creating an algorithm means translating a problem description into ordered steps using sequence, selection and iteration in the required notation. Interpreting an algorithm means tracing it with sample data to state its purpose, outputs or behaviour, including edge cases. Correcting an algorithm means locating logic errors such as wrong conditions, off-by-one loop bounds or misplaced statements, then amending them. Completing an algorithm means supplying missing lines or symbols so that it fulfils the stated purpose without changing the given logic. A common slip: Confusing '=' with '==' in conditions. Instead, is to use a single '=' for assignment and '==' for comparison in pseudocode and Python. Exam tip: Trace algorithms line by line with a trace table, recording each variable after every change, to interpret output and spot errors.
Key words
Say what each word means before you turn the card.
Creating
Try answering aloud or in your head before turning the card.
Interpreting
Try answering aloud or in your head before turning the card.
Correcting
Try answering aloud or in your head before turning the card.
Refining
Try answering aloud or in your head before turning the card.
See every definition
- Creating
- Writing a correct algorithm from a problem description, translating it into ordered steps using sequence, selection and iteration in the required notation.
- Interpreting
- Reading an algorithm and stating its purpose or output, tracing it with sample data to state its behaviour, including edge cases.
- Correcting
- Finding and fixing logic errors such as wrong conditions, off-by-one loop bounds or misplaced statements, then amending them.
- Refining
- Improving an already working algorithm, for example by removing repeated code or handling invalid input.
There is more to this lesson
The full lesson goes on to check your understanding and help you earn the marks. Create a free account to carry on, with your progress saved.
A week of Premium from your first lesson · Then the free plan continues · No card, no charge
Test your understanding of Designing, creating and refining algorithms: Create, interpret, correct, complete, and refine algorithms using Pseudocode Flowcharts Reference language/high-level programming language
Active recall beats re-reading. Take an instant quiz now to test what you’ve learned and lock it into long-term memory.
A week of Premium from your first lesson · Then the free plan continues · No card, no charge