The Six Principles
Algorithm Fundamentals
Logical Operators & Decisions
Standard Algorithms
Planning & Impact
100

This principle involves breaking a problem down into smaller, manageable steps or sub-procedures.

What is Thinking Procedurally?

100

This visual representation uses standardized symbols like diamonds for decisions and rectangles for processes.

What is a Flowchart?

100

This logical operator returns true only if both conditions being tested are true.

What is AND?

100

This algorithm visits every element in a list one by one until a specific value is found.

What is a Sequential (Linear) Search?

100

What is a Summation (or running total) algorithm?

What is a Gantt Chart?

200

This involves identifying the necessary information while ignoring irrelevant details to simplify a problem.

What is Thinking Abstractly?

200

This is the specific "language" used in IB exams to express algorithms, sitting halfway between English and code.

What is Pseudocode?

200

This operator returns true if at least one of the conditions being tested is true.

What is OR?

200

This algorithm iterates through an array, comparing adjacent elements and swapping them if they are in the wrong order.

What is a Bubble Sort?

200

This is the TOK concept associated with using a "map" to represent a physical territory as a form of abstraction.

What is The map is not the territory?

300

This principle requires identifying when decisions must be made and the specific conditions that trigger different actions.

What is Thinking Logically?

300

This term describes a collection of data of the same type, stored in a linear sequence.

What is an Array?

300

This logical structure allows a program to choose between two different paths based on a condition.

 What is an IF...THEN...ELSE statement?

300

This process involves going through an algorithm step-by-step with sample data to verify its correctness.

What is a Dry Run (or Trace)?

300

This programming approach involves implementing parts of a solution at the same time to save time.

What is Concurrent Processing?

400

This "thinking" style involves identifying required inputs, outputs, and pre-conditions before an algorithm begins.

What is Thinking Ahead?

400

This is the name for a self-contained block of code that performs a specific task and can be called by an identifier.

What is a Sub-procedure (or function/method)?

400

This term refers to an error-handling requirement where you identify unusual cases that could break a solution.

What are Exceptions?

400

This value is used to determine the maximum or minimum number in a list during a standard "find max" algorithm.

What is a Sentinel Value (or temporary max variable)?

400

This group of people is essential to liaise with to evaluate if a computational solution is successful.

What are Clients (or Stakeholders)?

500

This principle involves a process that calls itself to solve a problem, effectively solving a smaller version of the same task.

 What is Thinking Recursively?

500

These two conditions describe the state of a system before and after an algorithm is executed.

What are Pre-conditions and Post-conditions?

500

This is the specific type of test that results in a value of either True or False.

What is a Boolean Test?

500

This type of algorithm is used to add up all the values stored in a numerical array.

What is a Summation (or running total) algorithm?

500

This is the primary reason the guide suggests using sub-procedures when solving complex problems.

What is Modularity (or code reuse/abstraction)?

M
e
n
u