The ability to move between natural‑language descriptions, pseudocode, and flowcharts underpins several syllabus areas. The table shows where this lesson fits in the overall scheme of work.
| Syllabus Area (AS) | Lesson Focus | Related A‑Level Extension |
|---|---|---|
| 8 – Algorithms | Structured English → Flowchart conversion, basic algorithm analysis | 13 – Advanced algorithms (recursion, divide‑and‑conquer) |
| 9 – Data Structures | Sequential processing (arrays, records) illustrated with flowcharts | 14 – Complex data structures (linked lists, trees) |
| 10 – Programming | Pseudocode conventions, translation to/from flowcharts | 15 – Object‑oriented design, exception handling |
| 11 – Software Development | Design‑by‑decomposition, testing strategies (flowchart tracing) | 16 – Agile development, version control |
| 12 – Computational Thinking | Algorithmic efficiency (Big‑O basics) | 17 – Advanced complexity analysis |
| Symbol | Name | Purpose |
|---|---|---|
| ▶ | Start / End | Marks the entry and exit points of the algorithm. |
| ⎕ | Input / Output | Shows data being read from or written to the user, file, or peripheral. |
| □ | Process | Represents a computation, assignment, or sub‑routine call. |
| ◇ | Decision | Boolean test with two outgoing branches (Yes / No). |
| ↺ | Connector | Joins flow lines on the same page or continues the flow on another page. |
Cambridge expects a consistent notation. The table summarises the most frequently used constructs.
| Element | Keyword / Symbol | Typical Structured English Form |
|---|---|---|
| Start / End | BEGIN / END | BEGIN … END |
| Input | READ | READ variable1, variable2 |
| Output | DISPLAY / PRINT | DISPLAY result |
| Assignment | SET | SET total TO total + price |
| Decision | IF … THEN … ELSE … END IF | IF condition THEN … ELSE … END IF |
| Counter Loop | FOR … TO … DO … END FOR | FOR i FROM 1 TO n DO … END FOR |
| Sentinel Loop | WHILE … DO … END WHILE | WHILE count > 0 DO … END WHILE |
| Repeat‑Until Loop | REPEAT … UNTIL … | REPEAT … UNTIL condition |
BEGIN and END. Place a Start/End symbol for each.READ, INPUT, DISPLAY, PRINT. Use the Input/Output symbol.IF…THEN…ELSE, WHILE, REPEAT, FOR are represented by Decision symbols.BEGIN
READ number1, number2, number3
SET max TO number1
IF number2 > max THEN
SET max TO number2
END IF
IF number3 > max THEN
SET max TO number3
END IF
DISPLAY max
END
Key Flowchart Points
max)number2 > maxSET max TO number2number3 > maxSET max TO number3Efficiency: Two comparisons → O(1).
BEGIN
READ n
SET factorial TO 1
WHILE n > 1 DO
SET factorial TO factorial * n
SET n TO n - 1
END WHILE
DISPLAY factorial
END
Flowchart Highlights
n > 1.Efficiency: Executes n‑1 times → O(n).
BEGIN
READ key, n
FOR i FROM 1 TO n DO
READ array[i]
END FOR
SET found TO FALSE
FOR i FROM 1 TO n DO
IF array[i] = key THEN
SET found TO TRUE
EXIT FOR
END IF
END FOR
IF found THEN
DISPLAY "Key found"
ELSE
DISPLAY "Key not present"
END IF
END
Flowchart Features
found.Efficiency: Worst‑case examines every element → O(n). Best‑case (first element matches) → O(1).
FUNCTION Fact(k)
IF k = 0 THEN
RETURN 1
ELSE
RETURN k * Fact(k‑1)
END IF
END FUNCTION
BEGIN
READ n
DISPLAY Fact(n)
END
Flowcharts are not ideal for recursion, but a structured flowchart can still be drawn by:
Fact(k).k = 0).This example is useful for discussion: why pseudocode or actual code is usually clearer for recursive algorithms (AO3).
When you finish a flowchart, add an “Efficiency Box” beside it summarising:
| Assessment Objective | How This Lesson Addresses It |
|---|---|
| AO1 – Knowledge & Understanding | Recall of flowchart symbols, structured‑English conventions, and conversion steps. |
| AO2 – Application & Analysis | Convert structured English to a flowchart, trace execution, estimate time‑complexity. |
| AO3 – Design & Evaluation | Justify algorithmic choices (iterative vs recursive), suggest improvements, evaluate efficiency. |
| Week | Topic | Key Activities |
|---|---|---|
| 1‑2 | Information Representation | Binary/hex conversions, character encodings, short quizzes. |
| 3‑4 | Computer Architecture | CPU cycle diagram, simple instruction set exercises. |
| 5‑6 | System Software & Security | OS functions, basic cryptography, ethical case‑study. |
| 7‑8 | Databases & Simple SQL | Design a table, write SELECT/INSERT statements. |
| 9‑10 | Data Structures – Arrays & Records | Indexing, bounds checking, flowchart representation. |
| 11‑12 | Introduction to Algorithms | Linear search, bubble sort, pseudocode practice. |
| 13‑14 | Structured English → Flowchart (this lesson) | Conversion steps, three worked examples, efficiency box. |
| 15‑16 | Design‑by‑Decomposition & Testing | Modular flowcharts, trace tables, black‑box testing. |
| 17‑18 | Programming Fundamentals (Python/Java) | Implement the flowcharts in code, compare outputs. |
| 19‑20 | A‑Level Extensions – Recursion & Exception Handling | Recursive flowcharts, try‑catch concepts. |
| 21‑22 | Advanced Algorithms – Divide & Conquer | Merge‑sort flowchart, complexity analysis. |
| 23‑24 | Networking & Protocols | Layered diagram, simple client‑server pseudo‑code. |
| 25‑26 | Intro to AI – Search & Heuristics | Flowchart for a basic heuristic search. |
| 27‑28 | Revision & Past‑Paper Practice | Full‑question simulations, marking against AO1‑AO3. |
| 29‑30 | Mock Exam & Feedback | Timed exam, detailed feedback, final clarification. |
BEGIN
READ m, n
SET total TO 0
FOR i FROM m TO n DO
SET total TO total + i
END FOR
DISPLAY total
END
Task: Draw the complete flowchart, label all arrows, and write the Big‑O analysis.
BEGIN
SET sum TO 0
SET count TO 0
READ number
WHILE number > 0 DO
SET sum TO sum + number
SET count TO count + 1
READ number
END WHILE
IF count = 0 THEN
DISPLAY "No positive numbers entered"
ELSE
SET average TO sum / count
DISPLAY average
END IF
END
Task: Produce a flowchart, then trace the algorithm with the input sequence 5, 8, -3. State the efficiency.
BEGIN
READ n
FOR i FROM 1 TO n DO
FOR j FROM 1 TO n DO
DISPLAY i * j, " "
END FOR
DISPLAY NEWLINE
END FOR
END
Task: Sketch the flowchart, emphasising the two nested FOR loops, and discuss the time‑complexity.
Use this checklist to verify that your teaching material aligns with the Cambridge syllabus before sending it for a detailed review.
| AS Core Topic | Covered? (✓ / ✗) | Comments / Gaps |
|---|---|---|
| 1 – Information Representation (binary, hexadecimal, ASCII/Unicode, two’s‑complement, overflow) | ||
| 1.2 – Multimedia (bitmap vs. vector, colour depth, sampling rate, file‑size calculations) | ||
| 1.3 – Compression (lossless vs. lossy, RLE, JPEG/MP3 basics) | ||
| 2 – Communication & Networking (OSI model, TCP/IP basics) | ||
| 3 – System Software (OS functions, basic security, ethical issues) | ||
| 4 – Databases (table design, SELECT/INSERT, primary keys) | ||
| 5 – Data Structures (arrays, records, simple linked list concepts) | ||
| 6 – Algorithms (linear search, bubble sort, pseudocode practice) | ||
| 7 – Structured English → Flowchart (this lesson) | ||
| 8 – Design‑by‑Decomposition & Testing (modular flowcharts, trace tables) | ||
| 9 – Programming Fundamentals (Python/Java implementation of flowcharts) | ||
| 10 – A‑Level Extensions (recursion, exception handling) | ||
| 11 – Advanced Algorithms (divide‑and‑conquer, merge sort) | ||
| 12 – Computational Thinking (Big‑O, efficiency analysis) |
To produce a side‑by‑side comparison of your lecture notes with the Cambridge 9618 syllabus and to give concrete improvement suggestions, please provide:
Once these materials are available, a detailed mapping, gap analysis, and targeted recommendations can be delivered.
Your generous donation helps us continue providing free Cambridge IGCSE & A-Level resources, past papers, syllabus notes, revision questions, and high-quality online tutoring to students across Kenya.