The most hands-on unit in the ICT syllabus. Learn to think algorithmically, draw flowcharts, write pseudo code and then encode solutions in Python — covering variables, operators, control structures, user-defined functions, lists, tuples, dictionaries, file handling, database connectivity and sorting. Covers competency levels 9.1–9.13 from the NIE ICT syllabus.
🔍 Problem Solving Process
📐 Top-Down Design
📊 Structure Charts
🔄 Flowcharts
📝 Pseudo Code
✋ Hand Traces
🔢 Programming Paradigms
⚙️ Translators — Compilers / Interpreters
🖥️ IDE & Debugging
📦 Variables & Constants
🔣 Primitive Data Types
➕ Operators & Precedence
📥 Input / Output
🔀 Selection (if/elif/else)
🔁 Loops (for / while)
🧩 Nested Control Structures
🔧 Built-in & User Functions
📌 Parameters & Return Values
🌐 Scope of Variables
📋 Strings & Lists
📦 Tuples & Dictionaries
📁 File Handling
🗄️ Database Connectivity
🔍 Sequential Search
🔃 Bubble Sort
📋
Imperative
Tells computer HOW to do tasks step-by-step. Python, C, Pascal.
🧠
Declarative
Tells computer WHAT to achieve, not how. SQL, Prolog, HTML.
🏗️
Object-Oriented
Models data as objects with properties and methods. Python, Java, C++.
🔧
Compiler
Translates entire source → object code before execution. C, C++.
▶️
Interpreter
Executes source code line-by-line at runtime. Python, JavaScript.
COMPETENCY 9.1 · 2 PERIODS
Problem-Solving Process
Understanding the problem, defining it and its boundaries, planning a solution and implementing it. Steps of the problem-solving process.
COMPETENCY 9.2 · 4 PERIODS
Top-Down Design & Structure Charts
Modularisation, top-down design and stepwise refinement methodology. Drawing structure charts to illustrate a solution for a system.
COMPETENCY 9.3 · 6 PERIODS
Algorithmic Approach
Algorithms using flowcharts (standard symbols), pseudo code and hand traces. Drawing flowcharts and writing pseudo code for given problems. Verifying solutions using hand traces.
COMPETENCY 9.4 · 2 PERIODS
Programming Paradigms
Evolution of programming languages (generations 1G–5G). Comparison of imperative, declarative and object-oriented languages.
COMPETENCY 9.5 · 2 PERIODS
Program Translation
Need for translation. Source vs. object program. Interpreters, compilers, hybrid approach. Role of linkers in program execution.
COMPETENCY 9.6 · 4 PERIODS
IDE & Debugging
Basic features of IDE. Opening, saving, compiling and executing programs. Using debugging facilities to identify and fix errors in code.
COMPETENCY 9.7 · 10 PERIODS
Python Basics
Program structure, comments, constants and variables. Primitive data types. Arithmetic, relational, logical and bitwise operators with precedence. Input from keyboard and output to standard devices.
COMPETENCY 9.8 · 12 PERIODS
Control Structures
Sequence, selection (if/elif/else) and repetition (for/while loops). Iteration vs. looping. Applying nested control structures in programs.
COMPETENCY 9.9 · 10 PERIODS
Sub-programs (Functions)
Built-in and user-defined functions. Function structure, parameter passing, return values and default values. Scope of variables — local vs. global. Variable lifetime.
COMPETENCY 9.10 · 8 PERIODS
Data Structures
Strings, lists, tuples and dictionaries. Properties of each. Using relevant data structures in Python programs.
COMPETENCY 9.11 · 6 PERIODS
File Handling
Basic file operations: open, close, read, write and append. Using file modes ('r', 'w', 'a') in Python programs.
COMPETENCY 9.12 · 4 PERIODS
Database Connectivity
Connecting Python to a database. Embedding SQL statements to retrieve, add, modify and delete data programmatically.
COMPETENCY 9.13 · 4 PERIODS
Searching & Sorting
Sequential search technique — implementation and use cases. Bubble sort technique — algorithm steps, implementation and tracing through iterations.