Master Pseudocode with Pro
Get unlimited access to the AI Tutor, Code Generator, and Converters. Plus, enjoy an ad-free experience.
The Complete CIE Pseudocode Guide (AS/A Level - 9618)
If you are preparing for the Cambridge International AS and A Level Computer Science (9618) examination, you are faced with perhaps the most rigorous and detailed pseudocode standard of any educational board.
The CIE standard heavily mimics strongly typed legacy languages like Pascal and Visual Basic. You cannot simply define a variable on the fly; you must explicitly DECLARE its data type before using it. Furthermore, arrays require explicit lower and upper bounds, and file handling operates procedurally.
This massive guide dissects the entire CIE 9618 pseudocode specification. We will cover strict variable declaration, custom types (Records and Pointers), iteration, string handling, procedural file reading, and full Object-Oriented Programming (OOP) syntax.
Table of Contents
Variables, Constants, and Data Types
In CIE pseudocode, all variables must be declared with an explicit data type before they are assigned a value. Variables are normally declared in CamelCase or PascalCase.
- Data Types:
INTEGER,REAL,CHAR,STRING,BOOLEAN,DATE. - Assignment: You must use the left arrow
←. (The equals sign is reserved only for comparison). - Constants: Assigned using
=after theCONSTANTkeyword.
User-Defined Types (Records, Sets, Pointers)
The 9618 syllabus requires you to construct advanced data types. These are grouped using the TYPE ... ENDTYPE structure.
Records and Enumerated Types
Pointers
Pointers reference a memory location. They are defined using the caret ^ symbol. When accessing the value stored at the memory address, place the caret after the variable name.
Operators and String Functions
- Arithmetic:
+,-,*,/,DIV,MOD. - Relational: Uses
=for equality, and diamond brackets<>for "not equal to". - Logical:
AND,OR,NOT.
String Manipulation
CIE string handling mimics Visual Basic. The most important rule to remember is that concatenation uses the ampersand & symbol, not the plus symbol.
Selection (IF and CASE OF)
CIE supports standard IF ... THEN ... ELSE ... ENDIF blocks. However, it does not explicitly define an ELSE IF keyword in its core documentation, encouraging nested IFs or the use of CASE OF blocks instead for multiple branches.
Iteration (Loops)
CIE uses three loops: FOR (which includes an optional STEP clause and must repeat the identifier after NEXT), WHILE, and REPEAT UNTIL.
Arrays
In CIE, arrays are fixed-length structures. You must explicitly declare the lower bound, the upper bound, and the data type. While bounds can technically be 0, CIE typically defaults to 1-based indexing in questions.
Procedures and Functions
CIE explicitly splits subroutines into PROCEDURE (performs an action) and FUNCTION (calculates and returns a value). You must define data types for all parameters, and explicitly define the return type for functions.
When executing a procedure, you must use the keyword CALL.
File Handling
CIE uses a strictly procedural command-word style for handling text and random files. It does not use objects or dot-notation.
Object-Oriented Programming (OOP)
Classes define the blueprint for objects. Constructors must be named NEW. Inheritance uses the INHERITS keyword, and methods in the parent class are called using SUPER.
Conclusion
The Cambridge International (9618) specification is highly structured, strongly typed, and explicit. Unlike looser pseudocodes, you cannot cut corners here. You must DECLARE everything, type-cast strictly, and use exact keywords like CALL, ←, and BYREF.
While it requires more writing, this rigorous syntax ensures there is absolutely no ambiguity in your algorithmic designs. Practice writing out these specific definitions to ensure you don't drop marks on simple syntactical errors in your 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