Sign InCreate Account

Coding Workspace

EditorProjects

AI Assistance

Pseudocode TutorCode GeneratorCode FixerCode Converter

Practice & Learn

Practice QuestionsFlowcharts

Upgrade to Pro • $12.99

Unlock unlimited access to our AI assistants & coding features.

Upgrade now
🚀 Upgrade to PseudoEditor Pro

Pro gives you an unfair advantage for your coding exams.

Stop struggling with syntax errors and exam questions. Join 10,000+ students and unlock unlimited access to our AI pseudocode tutor, pseudocode generator, and code converters.

7-Day Refund Guarantee

$12.99

One-Time Payment

Continue with Email

Already have an account? Sign in

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 TypesUser-Defined Types (Records, Sets, Pointers)Operators and String FunctionsSelection (IF and CASE OF)Iteration (Loops)ArraysProcedures and FunctionsFile HandlingObject-Oriented Programming (OOP)Conclusion

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 the CONSTANT keyword.
Loading...

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

Loading...

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.

Loading...

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.

Loading...

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.

Loading...

Iteration (Loops)

CIE uses three loops: FOR (which includes an optional STEP clause and must repeat the identifier after NEXT), WHILE, and REPEAT UNTIL.

Loading...

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.

Loading...

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.

Loading...

File Handling

CIE uses a strictly procedural command-word style for handling text and random files. It does not use objects or dot-notation.

Loading...

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.

Loading...

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!

Read Our Guide on
OCR Pseudocode

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

Product

For SchoolsOverviewFeaturesFAQ
PseudoEditor

© 2026 PseudoEditor. All rights reserved.