In simple terms
A friendly intro before the formal notes — no formulas yet.
From Blueprint to Building
Computational thinking is the architect's plan for building software. It provides a structured way to think about a problem, breaking it down into manageable parts before a single line of code is written.
Imagine you're planning a large, surprise birthday party. You don't just start buying random decorations. First, you use computational thinking: you 'decompose' the event into smaller tasks (invites, cake, venue, music). You 'abstract' away minor details like the colour of the napkins for now, focusing on the guest list and budget. You spot 'patterns', like needing to get contact details for every guest. Finally, you create an 'algorithm'—a step-by-step plan for the day of the party. This plan is your program design, ensuring the party (your program) runs smoothly.
- 1
Decompose the Problem: Break a large, complex problem into smaller, more manageable sub-problems.
- 2
Abstract and Recognise Patterns: Identify the essential details, ignore the irrelevant ones, and find repeating elements or structures.
- 3
Design the Algorithm: Create a step-by-step plan, using pseudocode or a flowchart, to solve each sub-problem.
- 4
Combine and Refine: Integrate the solutions for the sub-problems into a complete, documented program design ready for implementation.
Explore the concept
Use the live diagram and synced steps — play it or tap a step card to walk through.
Full topic notes
Formal explanation with the rigour you need for the exam.
The Four Pillars of Computational Thinking
Computational thinking is not about thinking like a computer; it's a formal problem-solving method that computer scientists use. It is composed of four fundamental techniques that can be applied to any complex problem, whether in computing or everyday life. Mastering these will allow you to approach any programming challenge with a clear strategy.
Decomposition: Breaking a large problem into smaller, self-contained, and more manageable sub-problems.
Pattern Recognition: Identifying similarities, trends, or repeated processes within the problem or between the sub-problems.
Abstraction: Ignoring the details that are not essential for solving the problem, allowing you to focus on the core structure and logic.
Algorithms: Developing a step-by-step solution to the problem, or to each of the sub-problems identified during decomposition.
From Thinking to Designing: A Practical Workflow
The four pillars are not isolated concepts; they form a workflow. You start by decomposing the problem. As you analyse the smaller pieces, you use abstraction to simplify them and pattern recognition to find commonalities. This leads to the creation of algorithms for each piece. These algorithms, when combined, form the overall design of your program. This design is then documented using tools like pseudocode or flowcharts.
Representing the Design: Pseudocode and Flowcharts
Once you have a logical algorithm, you must communicate it clearly. Pseudocode and flowcharts are two standard ways to do this. Pseudocode is text-based and uses structured English to describe the steps. It's quick to write and easy to convert to code. Flowcharts are diagrammatic, using specific shapes to represent actions, decisions, and data flow. They are excellent for visualising complex logic and control flow, especially for learners.
In Paper 1, you will frequently be asked to write an algorithm in pseudocode or draw a flowchart. The IB has a specific approved notation sheet for pseudocode. While you are not penalised for minor deviations, using standard keywords like LOOP...ENDLOOP, IF...THEN...ELSE...ENDIF, INPUT, and OUTPUT will ensure the examiner understands your logic. Clarity and correctness of the logic are more important than perfect syntax.
Worked examples
See the formulas applied — reveal one step at a time, like the exam.
A program is required to manage a simple 'To-Do' list. A user should be able to add a task, view all tasks, and mark a task as complete. The tasks are stored in a list. Outline the program design by applying the principles of computational thinking and providing a high-level pseudocode algorithm.
- 1
Here is a breakdown of the design process:
A simple game asks a user to guess a secret number between 1 and 100. The program tells the user if their guess is 'too high' or 'too low'. The game ends when they guess correctly. Design a flowchart to represent the algorithm for this game. Assume the secret number is pre-set to 42.
- 1
Here is a step-by-step description of the flowchart, which represents the algorithm:
How it all connects
The big idea sits in the middle — tap a linked idea to explore the link.
Tap a linked idea to see how it connects back to the main topic — that connection is what examiners reward.
Glossary
Try to recall each definition before you reveal it.
Quick check
Answer in your head first — then tap to check. No pressure.
Revision flashcards
Flip the card. Test yourself before the exam.
Computational Thinking
A problem-solving process that involves formulating a problem and expressing its solution in a way that a computer (human or machine) can effectively carry out. It comprises four key components.
Key takeaways
Review these before you close the topic — retrieval beats re-reading.
- ✓
Decomposition: Breaking a large problem into smaller, self-contained, and more manageable sub-problems.
- ✓
Pattern Recognition: Identifying similarities, trends, or repeated processes within the problem or between the sub-problems.
- ✓
Abstraction: Ignoring the details that are not essential for solving the problem, allowing you to focus on the core structure and logic.
- ✓
Algorithms: Developing a step-by-step solution to the problem, or to each of the sub-problems identified during decomposition.
Practice — then mark it
The whole point: a real Cambridge question, marked mark-by-mark.
Test Your Understanding
Test Your Understanding
Extra simulations & links
PhET, GeoGebra and other curated tools — open in a new tab.
Frequently asked
Checkpoint
One marked question is worth ten re-reads — close the loop before you move on.
Reading it isn’t knowing it — prove it.
Before you move on: do Test Your Understanding on paper, snap a photo, and get examiner-style feedback on exactly where you win and lose marks.