Master Pseudocode with Pro
Get unlimited access to the AI Tutor, Code Generator, and Converters. Plus, enjoy an ad-free experience.
The Complete CIE IGCSE Pseudocode Guide (0478)
If you are studying for the Cambridge IGCSE Computer Science (0478) examination, understanding the exact structure of their pseudocode is vital. Unlike loosely-typed languages, CIE requires a highly structured, formal approach to algorithms.
The CIE IGCSE standard expects you to explicitly DECLARE your variables and arrays with their specific data types before using them. It relies on uppercase keywords and distinct assignment arrows to keep logic unambiguous and clean.
This master guide breaks down the entire CIE 0478 pseudocode specification. We will explore variable declaration, input/output, operators, selection, iteration, arrays, and subroutines to ensure you are fully prepared for your exams.
Table of Contents
General Syntax Rules
Before looking at specific constructs, there are a few foundational rules CIE applies to its IGCSE pseudocode:
- Keywords are capitalized: Control words like
IF,REPEAT, andPROCEDUREare always written in uppercase. - Identifiers are mixed case: Variable names are written in camelCase or PascalCase (e.g.,
NumberOfPlayers). Accented letters or underscores should be avoided. - Indentation: Code inside loops and IF statements must be indented (usually by 4 spaces) to show the structure clearly.
Variables, Constants, and Data Types
In CIE pseudocode, you must declare a variable and define its type before you can use it. The assignment operator is the left arrow ←.
- Data Types:
INTEGER(whole numbers),REAL(decimals),CHAR(single character),STRING(text),BOOLEAN(TRUE/FALSE). - Constants: Assigned using
=instead of an arrow.
Input, Output, and Comments
CIE uses INPUT and OUTPUT for basic user interaction (though the syllabus notes READ and PRINT are also acceptable examples). Comments are marked with double forward slashes //.
Operators (Arithmetic, Relational, Logical)
Arithmetic Operators
- Standard:
+,-,*,/ - Integer Division: Uses
DIVto return the quotient without remainder. - Modulus: Uses
MODto return only the remainder.
Relational & Logical Operators
- Equality: Uses a single equals sign
=(e.g.,IF Score = 10). - Not Equal: Uses diamond brackets
<>. - Magnitude:
<,>,<=,>= - Logical:
AND,OR,NOT(capitalized).
Selection (IF and CASE OF)
CIE utilizes standard IF blocks. Note that the THEN and ELSE clauses are often written on their own lines to keep things readable. For multiple options, use the CASE OF statement with an OTHERWISE catch-all.
Iteration (Loops)
CIE provides three specific loops: FOR (count-controlled), REPEAT UNTIL (post-condition), and WHILE DO (pre-condition). Note the specific syntax requiring the DO keyword in the while loop.
1D Arrays
Arrays in CIE must be explicitly declared with their lower and upper index bounds, followed by the data type. While 0-based arrays are possible, 1-based indexing is generally the convention.
Procedures and Functions
CIE explicitly splits subroutines into PROCEDURE (performs an action) and FUNCTION (returns a value). You must define data types for all parameters, and explicitly state the return type for functions. When calling a procedure, you must use the CALL keyword.
Conclusion
The Cambridge IGCSE (0478) specification is highly structured. Unlike looser pseudocodes like Python or OCR, you cannot cut corners. You must explicitly DECLARE every variable and array, type-cast stringently, and use exact keywords like CALL, ←, and WHILE ... DO.
This rigorous syntax ensures there is absolutely no ambiguity in your algorithmic logic. Practice writing out these specific definitions to ensure you don't drop marks on syntactical errors in your pre-release material or final exam!
Ready to practice? Try our editor.
Give our pseudocode editor a go today for free - with a built-in compiler, tools to convert pseudocode to code, and project saving, PseudoEditor makes writing pseudocode easier than ever!
Start coding now