Course code: ESC-18104

Item Value
Category: Engineering Science Course
Credits: 3
Course scheme: L 3 / T 1
Contact hours: 40
Pre-requisites: None

Unit 1: Introduction to Programming (4 lectures)

  1. Introduction to components of a computer system:
  2. Idea of Algorithm:
  3. From algorithms to programs:

Unit 2: Arithmetic expressions and precedence (2 lectures)

Unit 3: Conditional Branching and Loops (6 lectures)

  1. Writing and evaluation of
  2. Iteration and loops (3 lectures).

Unit 4: Arrays (6 lectures)

  1. Arrays

Unit 5: Basic Algorithms (6 lectures)

Searching, Basic Sorting Algorithms (Bubble, Insertion and Selection), Finding roots of
equations, notion of order of complexity through example programs (no formal definition

Unit 6: Function (5 lectures)

Functions (including using built in libraries), Parameter passing in functions, call by value,
Passing arrays to functions: idea of call by reference

Unit 7: Recursion (4 -5 lectures)

Recursion, as a different way of solving problems. Example programs, such as Finding
Factorial, Fibonacci series, Ackerman function etc. Quick sort or Merge sort.

Unit 8 Structure (4 lectures)

Structures, Defining structures and Array of Structures

Unit 9 Pointers (2 lectures)

Idea of pointers, Defining pointers, Use of Pointers in self-referential structures, notion of
linked list (no implementation)

Unit 10 File handling

(if time is available, otherwise cover in lab)