TK Study

Software Engineering › How to answer › Drawing › a flowchart

How to draw a flowchart

A flowchart draws an algorithm with standard symbols, read from top to bottom. From course notes

What it looks like in the real exam

Reasoned No 2025 NESA question in our bank asks you to draw a flowchart. The syllabus lists flowcharts as a modelling tool and your school course grid gives it 3 marks. Flowchart reading and the same algorithms in pseudocode are examined (for example 2022 SDD Q18, in the multiple-choice bank, is the same validation algorithm as the example below, as a multiple-choice item; old syllabus). Know how to turn pseudocode into a flowchart and back.

From course notes Course grid: Flowchart is worth about 3 marks in the school’s exam-style grid (target band 3–5).

The symbols

ItemSymbol
Start and endRounded rectangle (terminator): one Start, one End
Process (calculation, assignment)Rectangle
Input / outputParallelogram
Decision (selection or loop test)Diamond with Yes and No branches labelled
Subroutine callRectangle with double side bars
FlowArrow with an arrowhead, top to bottom and left to right

From NESA material “Standard symbols (terminator, process, input/output, decision) joined by arrows, read top to bottom and left to right. Decision arrows must be labelled.” Reasoned The subroutine-call symbol is common practice and not in the specification text.

Method

  1. Read the question and list the steps in order. Find each decision. From course notes
  2. Write the pseudocode first (one line per symbol) if that helps. General advice
  3. Draw Start, then the first step, and keep going down the page. From course notes
  4. Draw each decision as a diamond with two arrows out, both labelled (Yes/No). Make one branch rejoin the main flow or go back up for a loop. From course notes
  5. A loop is a decision with an arrow that goes back to an earlier step. General advice
  6. Finish with End. Every path must reach End. Check arrowheads and labels. From course notes

Worked example: validate a ticket count (original, based on the old-syllabus algorithm)

Original practice Task: a program asks for the number of tickets, which must be a whole number from 1 to 10. Draw a flowchart that keeps asking until the number is valid, then processes the purchase.

Start Get NumTickets NumTickets < 1OR NumTickets > 10 ? Yes Display 'Invalid' No ProcessPurchase End
Flowchart of validating a ticket number from 1 to 10: Start and End are rounded terminators, input and output are parallelograms, the decision is a diamond with Yes and No arrows, and the loop returns to the input

It matches this pseudocode: Get NumTickets; WHILE NumTickets < 1 OR NumTickets > 10: Display 'Invalid'; Get NumTickets; ENDWHILE; ProcessPurchase. Notice the Yes arrow loops back to the input; the No arrow continues.

Markers’ checklist

  • One Start and one End, both terminator shapes.
  • Input/output in parallelograms, steps in rectangles.
  • Every decision is a diamond with Yes/No labels on both exits.
  • Every arrow has an arrowhead; the flow reads top to bottom.
  • Loops return to the right place; no path is a dead end.
  • Variable names match the question.

Common mistakes

  • General advice Decision diamond with only one exit, or exits not labelled.
  • General advice Using a rectangle for input or output.
  • General advice A loop that never reaches End.
  • General advice AND instead of OR in a range check (the condition “below 1 AND above 10” can never be true).

Time per mark

Derived The paper averages 1.75 minutes per mark (140 minutes ÷ 80 marks), so a 3-mark drawing question is about 5.3 minutes in total. General advice Suggested split: 1 minute reading and planning, most of the time drawing, and the last minute checking labels against the checklist. Drawing in an online tool is slower than on paper, so practise with the tool on NESA’s familiarisation site.

Practice (3 prompts, with answers)

Item 1 · pass or fail

Draw a flowchart that gets a mark and displays “Pass” if it is 50 or more, otherwise “Fail”.

Show the answer

Model answer: Start → Get Mark (parallelogram) → decision “Mark ≥ 50?” → Yes: Display “Pass”; No: Display “Fail” → both join → End. Original practice

Item 2 · count to five

Draw a flowchart that displays 1, 2, 3, 4, 5.

Show the answer

Model answer: Start → process “n = 1” → decision “n ≤ 5?” → Yes: Display n → process “n = n + 1” → arrow back to the decision; No → End. Original practice

Item 3 · pseudocode to flowchart

Draw a flowchart for: Total = 0; FOR i = 1 TO 3: Total = Total + i; NEXT i; Display Total.

Show the answer

Model answer: Start → “Total = 0” → “i = 1” → decision “i ≤ 3?” → Yes: “Total = Total + i” → “i = i + 1” → back to decision; No: Display Total → End. The display is 6. Original practice

← How to draw a data flow diagram (DFD)How to draw and read a structure chart →