📁 Paper 1 · 3.1 Fundamentals of Algorithms
3.1.1b Representing Algorithms — Flowcharts and Pseudo-code
AQA 8525 · GCSE Computer Science · ~12 min read
Notes
──
Video
──
Slides
──
Worksheet
──
Quiz

Representing Algorithms

Algorithms can be represented in several ways before they are coded. The AQA 8525 specification requires you to understand and use flowcharts and pseudo-code. Both are ways of expressing the logic of an algorithm without tying it to a specific programming language.

Flowcharts

A flowchart is a diagram that uses standard shapes connected by arrows to show the steps and decisions in an algorithm. Arrows show the flow of control — the order in which steps are executed.

Standard Flowchart Symbols

ShapeNameUsed for
OvalTerminatorStart and End of the algorithm
RectangleProcessA calculation or action, e.g. x ← x + 1
ParallelogramInput / OutputReading input from a user or displaying output
DiamondDecisionA yes/no question — creates two branches
Rectangle+SubroutineA call to a named subroutine (sub-program)

Rules for flowcharts

  • Every flowchart must have a Start and an End terminator
  • Decision boxes must have exactly two exits labelled Yes and No (or True/False)
  • Arrows must show direction of flow — never ambiguous
  • All paths through the flowchart must eventually reach the End terminator

Example: Check if a number is positive

START → Input number → Is number > 0? → Yes: Output "Positive" → END; No: Output "Not positive" → END

Pseudo-code

Pseudo-code is a structured way of writing algorithm steps using English-like statements and programming constructs (variables, loops, conditions) without the exact syntax of any real language. AQA provides its own pseudo-code notation that you must learn.

AQA Pseudo-code Notation

Variables and assignment

x5 # assign the value 5 to variable x name'Alice' # assign a string totala + b # assign a calculated value

Input and Output

xINPUT('Enter a number: ') OUTPUT('The answer is ', result)

Selection (IF statements)

IF x > 0 THEN OUTPUT('Positive') ELSE OUTPUT('Not positive') ENDIF

Count-controlled loops (FOR)

FOR i1 TO 10 OUTPUT(i) ENDFOR

Condition-controlled loops (WHILE and REPEAT)

WHILE x > 0 xx - 1 ENDWHILE REPEAT xx - 1 UNTIL x = 0

Subroutines

SUBROUTINE greet(name) OUTPUT('Hello ', name) ENDSUBROUTINE greet('Alice') # call the subroutine

Trace Tables

A trace table is a way of manually working through an algorithm step by step, recording how the values of variables change at each stage. They are used to:

  • Verify that an algorithm produces the correct output
  • Find bugs (errors in logic)
  • Understand what an algorithm does

Example trace table for a simple loop

total0 FOR i1 TO 3 totaltotal + i ENDFOR OUTPUT(total)
StepitotalOUTPUT
Start0
i = 111
i = 223
i = 336
End6

Flowcharts vs Pseudo-code

FlowchartsPseudo-code
Visual — good for seeing flow of controlTextual — closer to real code
Easy to follow for non-programmersBetter for complex algorithms
Standard shapes everyone recognisesMore compact for long algorithms
Harder to write loops with many iterationsLoops and conditions are easy to write
Exam tip: AQA exam questions often ask you to write pseudo-code in AQA notation, or to trace through given pseudo-code with a trace table. Practise both skills. The ← symbol (not =) is used for assignment in AQA pseudo-code.
⚠️ Common Mistakes
  • Using = for assignment in AQA pseudo-code — use ← instead
  • Forgetting ENDIF, ENDFOR, ENDWHILE, ENDSUBROUTINE keywords to close structures
  • Decision boxes in flowcharts with only one exit — they must have two (Yes/No)
  • Missing a Start or End terminator in a flowchart
  • Confusing WHILE (checks first) with REPEAT...UNTIL (checks last, always runs at least once)
Video coming soon
This lesson video is in production

Key points covered in this video

  • All five standard flowchart symbols and when to use each
  • AQA pseudo-code notation: variables, INPUT/OUTPUT, IF, FOR, WHILE, REPEAT
  • How to construct a trace table and use it to find bugs
  • Comparison of flowcharts and pseudo-code — which to use when
  • Worked exam question: write pseudo-code and draw a flowchart for the same algorithm
Click slide or press arrow keys to navigate
✍️

Exam-style Worksheet — 3.1.1b Representing Algorithms

8 AQA-style questions · 19 marks total · AI will mark your answers and give feedback

Q1State the flowchart symbol used for a decision.[1 mark]
✅ Mark scheme
Mark scheme
Diamond (rhombus) shape. [1 mark]
Q2State the flowchart symbol used for input and output operations.[1 mark]
✅ Mark scheme
Mark scheme
Parallelogram. [1 mark]
Q3Explain the difference between a WHILE loop and a REPEAT...UNTIL loop.[2 marks]
✅ Mark scheme
Mark scheme
WHILE checks its condition before executing the body, so it may never execute if the condition is false from the start [1]; REPEAT...UNTIL checks its condition after executing the body, so it always executes at least once [1].
Q4Write AQA pseudo-code to ask a user to enter their age and output "Adult" if age ≥ 18 or "Minor" otherwise.[4 marks]
✅ Mark scheme
Mark scheme
age ← INPUT('Enter your age: ') [1]; IF age >= 18 THEN [1]; OUTPUT('Adult') [1]; ELSE OUTPUT('Minor') ENDIF [1]. Must use ← for assignment; must have ENDIF; must have both branches.
Q5Write AQA pseudo-code to output the numbers 1 to 5 using a FOR loop.[3 marks]
✅ Mark scheme
Mark scheme
FOR i ← 1 TO 5 [1]; OUTPUT(i) or equivalent [1]; ENDFOR [1].
Q6Trace through the following pseudo-code and complete a trace table showing the value of count and total at each step.

count ← 0
total ← 0
WHILE count < 4
    count ← count + 1
    total ← total + count
ENDWHILE
[4 marks]
✅ Mark scheme
Mark scheme
count=0, total=0 (start) [1]; count=1, total=1 [1]; count=2, total=3 [1]; count=3, total=6; count=4, total=10 (loop ends as count is no longer < 4) [1]. Final value of total = 10.
Q7Give TWO advantages of using pseudo-code over a flowchart when representing a complex algorithm.[2 marks]
✅ Mark scheme
Mark scheme (any 2)
More compact — complex algorithms with many steps would require a very large flowchart [1]; easier to write loops [1]; closer to actual programming code so easier to convert [1]; easier to edit and rewrite [1].
Q8A flowchart has a decision box that checks "Is score ≥ 50?". Describe what must happen after a decision box, and what the two exits must be labelled.[2 marks]
✅ Mark scheme
Mark scheme
A decision box must have exactly two exits [1]; they must be labelled Yes and No (or True and False) [1].
Compare your answers to the mark schemes above
Topic Quiz
Question 1 of 15
You scored
out of 15
Card 1 of 8
Click to flip
🎉
All cards reviewed!
TermDefinition
🎯

Mini Test — 3.1.1b Representing Algorithms

Timed exam conditions. No feedback until you submit.

  • 10 questions · 10 marks · 10 minutes
  • 5 multiple choice + 5 short answer
  • Mark schemes revealed after submission
← 3.1.1a Computational Thinking
2 of 57 · AQA 8525
3.1.1c Efficiency of Algorithms →