πΒ IGCSE Computer Science 0478
In IGCSE Computer Science, especially in Paper 2 (Algorithm and Programming), students are expected to write code-like logic using Pseudocode. But what is Pseudocode, and why is it so important?
Pseudocode is a simplified way of writing programming logic that doesn't follow the strict rules of any particular programming language. It uses clear, structured English-like commands to describe what a program should do.
πΉ IGCSE Exam Requirement: In Paper 2, most questions must be answered in pseudocode. Only the final question allows you to use Python or Pseudocode.
πΉ Language-Independent Thinking: Pseudocode helps you understand the core of how algorithms work: loops, conditionals, data structures.
In short, pseudocode is your stepping stone from thinking like a programmer to writing real code.
The Pseudocode vs Python cheat sheet is designed to help you bridge the gap between algorithm logic and real code. It includes:
Use this sheet when practicing exam questions, revising syntax, or converting pseudocode into Python, especially useful for the final question in Paper 2. Itβs also a great for quickly spotting the differences and similarities between the two so you can confidently switch between them in your learning and exams.
| Concept | Pseudocode | Python | Notes / Examples |
|---|---|---|---|
| Data Types | INTEGER, REAL, CHAR, BOOLEAN |
int, float, str, bool |
INTEGER β 3, REAL β 3.0, CHAR = "B" ,float = 5.4, bool = True |
| Comment | // this is a comment |
# this is a comment |
Use comments to explain code. Python uses # |
| Declaration | DECLARE Number1: INTEGER, DECLARE Name: STRING |
# no declarations ( only as comment) |
Use DECLARE in pseudocode. Declarations in Python donβt exist. |
| Assignment | name β "John", number β 123 |
name = "John", number = 123 |
β in pseudocode is assignment |
| Constants | CONSTANT Pi β 3.14 |
PI = 3.14 # IN CAPS |
Python doesn't enforce constants but uses CAPS |
| Input | INPUT "Your name is?: ", Name |
name = input("Your name is?: ") |
Asking user for a value that we store in a variable |
| Output | OUTPUT "Hello" Name |
print("Hello", name) |
For printing out on the screen |
| If Statements | `IF x > 5 THEN | ||
| OUPTUT "X is bigger than 5" | |||
| ELSE | |||
| OUPTUT "X is smaller or equal to 5" | |||
| ENDIF` | `if x > 5: | ||
| print("X is bigger than 5") | |||
| else: | |||
| print("X is smaller or equal to 5")` | Pseudocode has THEN, Python uses : |
||
| Elif / Else If | |||
| While Loops | `DECLARE answer : CHAR | ||
| INPUT answer | |||
| WHILE answer β "y" | |||
| INPUT answer | |||
| ENDWHILE` | |||
| `answer = input("Start? ") | |||
| while answer != "y": | |||
| answer = input("Start? ")` | |||
| This loop executes the code inside based on a condition | |||
| For Loops | FOR i β 1 TO 10 STEP 1,NEXT i |
for i in range(1, 11, 1): `for i in range(1, 4): # Loops 1 to 3 |
|
| print(i)` | |||
Like While Loop but amount of time it repeats known beforehand. Python range excludes last number. You can loop from a number to another number with step of 1, 2 etc. This is for repeating a certain code |
|||
| Modulus / Quotient | Num1 β 2 MOD 2, Num2 β 9 DIV 2, |
||
| `IF Num3 MOD 2 = 0 THEN | |||
| OUTPUT "Number 3 is even" | |||
| ELSE | |||
| OUTPUT "Number 3 is odd" | |||
| ENDIF` | |||
num1 = 9 % 2, num2 = 9 // 2,`if num3 % 2 == 0: |
|||
| print("Number 3 is even") | |||
| else: | |||
| print("Number 3 is odd")` | MOD gives remainder of division, DIVgives quotient of division. |
||
| Functions | `FUNCTION ToFahr(celsius : REAL) RETURNS REAL | ||
| RETURN (9/5) * celsius + 32 | |||
| ENDFUNCTION` | `def toFahr(celsius): | ||
| return (9/5)*celsius + 32` | |||
Use def in Python, RETURN/return to send value back |
|||
| Procedures | `PROCEDURE Hello() | ||
| OUTPUT "Hi" | |||
| ENDPROCEDURE` | `def hello(): | ||
| print("Hi")` | Same as function but without returning a value back | ||
| Array Declaration | DECLARE Jobs: ARRAY[1:3] OF STRING |
# declare jobs list of strings |
|
| Array Assignment | Jobs β ["Engineer", "Doctor", "Banker"], Jobs[4] β ["Scientist"] |
jobs = ["Engineer", "Doctor", "Banker"] |
arrays in Python are called lists and can are dynamic (no predetermined size) |
| 2D Arrays | DECLARE grid: ARRAY[0:2, 0:2] OF INTEGER |
||
grid = [[0,1],[2,3]] |
|||
| Relational Operators | =, <>, <, >, <=, >= |
==, !=, <, >, <=, >= |
Note: = in pseudocode is comparison, not assignment |
| Repeat Until | `X β 1 | ||
| REPEAT | |||
| OUPUT X | |||
| UNTIL X = 10` | x = 1 |
||
| `while True: | |||
| print(x) | |||
| if x == 10: break` | Use infinite loop + condition to break in Python. Repeat Until at least loops once unlike a While Loop that can also loop 0 times. |