A flowchart is a visual diagram that shows the steps of an algorithm using shapes and arrows. Each shape has a specific meaning — just like road signs have standardised shapes so everyone understands them instantly. Knowing the standard symbols is essential for reading and drawing flowcharts correctly.
Why Use Flowcharts?
Flowcharts make algorithms easier to understand at a glance. Instead of reading through lines of text or code, you can follow the arrows and immediately see the logical flow. They are especially useful for showing branching decisions and loops.
The Standard Flowchart Symbols
| Symbol name | Shape | Purpose |
|---|---|---|
| Terminal | Rounded rectangle (oval) | Start and End of the algorithm |
| Process | Rectangle | An action or calculation |
| Decision | Diamond | A yes/no question; two exit paths |
| Input/Output | Parallelogram | Inputting or outputting data |
| Flow arrow | Arrow | Shows the direction of flow between steps |
| Connector | Circle | Links parts of a diagram (used on large charts) |
The most commonly confused symbols are the rectangle (process) and the parallelogram (input/output). Remember: a parallelogram is for data moving in or out of the algorithm; a rectangle is for operations happening inside the algorithm.
Symbol Descriptions in Detail
Terminal (Start/End)
Drawn as a rounded rectangle or oval. Every flowchart must have exactly one Start terminal and at least one End terminal. They are usually labelled "START" and "END" or "STOP".
Process
Drawn as a plain rectangle. Use this for any step that calculates, updates a variable, or performs an action:
SET total ← price × quantitySET count ← count + 1
Decision
Drawn as a diamond. It contains a yes/no question (a Boolean condition). The diamond has two exit arrows labelled "Yes" and "No" (or "True" and "False"). It represents an IF statement.
Example question inside a diamond: Is score ≥ 50?
Input / Output
Drawn as a parallelogram (a rectangle leaning to one side). Use it for:
- Reading user input:
INPUT age - Displaying results:
OUTPUT "Hello, " + name
Flow Arrows
Arrows connect the symbols and show which step comes next. They must always be drawn with arrowheads to indicate direction.
Always draw arrows with clear arrowheads. An undirected line between two symbols is ambiguous — the reader cannot tell which direction the flow goes.
A Quick Reference Card
START/END PROCESS DECISION INPUT/OUTPUT
╭──────────╮ ┌──────────┐ ╱ ╲ ╱──────────╲
│ START │ │ SET x←5 │ ╱ x > 10? ╲ ╱ INPUT age ╲
╰──────────╯ └──────────┘ ╲ ╱ ╲ ╱
╲ ╱ ╲──────────╱
Yes ↓ No ↓
Different textbooks and exam boards occasionally use slightly different shapes. Always check which convention is required in your course. However, the diamond for decisions and the parallelogram for input/output are near-universal standards.
Matching Symbols to Pseudocode
| Pseudocode keyword | Flowchart symbol |
|---|---|
INPUT, OUTPUT | Parallelogram |
SET x ← value | Rectangle (process) |
IF ... THEN | Diamond (decision) |
FOR, WHILE | Diamond (decision) + loop arrow |
START, END | Terminal (oval) |
Practice Problems
Which flowchart symbol would you use for each of these steps: (a) Ask the user to enter a number; (b) Multiply two variables together; (c) Check whether a number is greater than zero; (d) Mark the beginning of the algorithm.
Show answer
Why does a decision symbol (diamond) need two exit arrows, not one?