FACULTY OF COMPUTER AND MATHEMATICAL SCIENCES
SCHEME OF WORK
Course : Programming I
Course Code : CSC402
Effective of Date : Oct 2021 – Feb 2022
Week Topic Hours Activities
1 Topic 1: Introduction to Computer and
Programming
A Brief History of Computer and Programming
Introduction to Programming Lecture/
- What is a computer programming? Discussion
- What is a computer program? 2
- Importance of computer program
- Importance of good program
- Relationship between compilers, interpreters,
assemblers and programs
Program Development Life Cycle – Problem
analysis, design, implementation, testing,
maintenance (documentation)
Programming paradigm
- Overview of Imperative paradigm
- Overview of functional paradigm
- Overview of logic paradigm
- Overview of object-oriented paradigm
Lab Session
Introduction to C++ Integrated Development
Environment (IDE). 2 Lab session
Compile and execute sample programs
2 Topic 2: Algorithmic Problem Solving
Introduction to Algorithm
- What is algorithm
- History of algorithm
- Algorithm and logical thinking
- Problem solving using different algorithms 2 Lecture / Discussion
- Algorithm representation
Flowchart
Pseudo code
Designing Algorithm on:
- Sequence Structure
- Selection Structure
- Repetition Structure
Lab Session
Identify the problem and how to solve the
problem 2 Lab session
Debug and execute given/sample programs
3 Topic 2: Algorithmic Problem Solving (cont’d)
Introduction to Basic Algorithm 1
- Examples of algorithm 2 Lecture / Discussion
Faculty of Computer and Mathematical Sciences Page 1 of 4
Hak Cipta Universiti Teknologi MARA ©2013
FACULTY OF COMPUTER AND MATHEMATICAL SCIENCES
SCHEME OF WORK
- Apply algorithm for sequence, selection and
repetition structure.
(Note: demonstrate the application of flowchart
and pseudocode for all cases)
Lab Session
Create algorithm representative (flowchart and 2 Lab session
pseudocode for a given problem)
4 Topic 2: Algorithmic Problem Solving (cont’d) Lecture / Discussion
Introduction to Basic Algorithm 2
- Min/Max computation of n 2 Individual
values Assignment
- Summation and average of n values (cover Topic 1 & 2)
approach
- Counting algorithm eg odd/even values,
pass/fail etc
Lab Session
Create algorithm representative (flowchart and 2 Lab session
pseudocode for a given problem)
5 Topic 3 : Basic Elements of a Computer Program
Identifier, variable, constant, reserved word
Basic data types – int, float, double, 2 Lecture / Discussion
long , short, char
Assignment statement
Input/output statement
Basic arithmetic operator - +, -, /, *
Lab Session
Write simple program 2 Lab session
6 Topic 3 : Basic Elements of a Computer Program
(cont’d)
Arithmetic operators and expression Lecture / Discussion
- Modulus (%) 2
- Compound / shortcut (+=, -=, *=, /=, %=)
Boolean values and expression
Relational and Logical Operators
Pre-defined Functions – math, iomanip, string Individual
Assignment
(cover Topic 3)
Lab Session
Write program using sequential structure 2 Lab session
Break
7 Topic 4 : Control Structure Lecture / Discussion
Sequence Structure
- Demonstrate all elements in previous topic 2
Selection Structure (if)
- One way selection
- Two- way selection
-
Lab Session
Write program 2 Lab session
Faculty of Computer and Mathematical Sciences Page 2 of 4
Hak Cipta Universiti Teknologi MARA ©2013
FACULTY OF COMPUTER AND MATHEMATICAL SCIENCES
SCHEME OF WORK
8 Topic 4 : Control Structure - selection (cont’d) 2 Lecture / Discussion
Selection (if)
- Multi-way Test 1
- Nested selection
Lab Session
Write program using selection statement 2 Lab session
9 Topic 4 : Control Structure – selection (cont’d))
switch statement 2 Lecture / Discussion
Individual
Assignment
(cover Topic 4-
selection)
Lab Session
Solve problem using switch statement 2 Lab session
10 Topic 4: Control Structure –loop (cont’d) Lecture / Discussion
Introduction to loop concept 2
- Counter-controlled loop
- Sentinel-controlled loop
while statement
Lab Session
Implementation of counter-controlled and 2 Lab session
sentinel-controlled loop using while statement
Break
11 Topic 4: Control Structure - loop (cont’d) Lecture / Discussion
Implementation of loop concept using 2
do..while and for statement Individual
Assignment (cover
Topic 4 - loop)
Lab Session
Write program using for and do..while 2 Lab session
statement
12 Topic 4: Control Structure - loop (cont’d) 2 Lecture / Discussion
Nested loop
Practical (Lab Test)
Lab Session
Write program using nested loop 2 Lab session
13 Topic 5: Array Lecture / Discussion
Discuss and demonstrate the structure and
usage of arrays 2
Introduction to array
Faculty of Computer and Mathematical Sciences Page 3 of 4
Hak Cipta Universiti Teknologi MARA ©2013
FACULTY OF COMPUTER AND MATHEMATICAL SCIENCES
SCHEME OF WORK
Array declaration and initialization
Accessing elements of an array
Input/output of an array
Lab session
Solve problems using array 2 Lab session
14 Topic 5: Array (cont’d) Lecture / Discussion
Array operations
- Summation and average, 2 Test 2
- min/max computation,
- counting and searching (index and content)
Introduction to array of char
Lab session
Solve problem using related array processing 2 Lab session
Assessment:
Final Assessment : 50%
Take home test : 50%
Course Work : 50%
Assessment 1 : 20%
o Individual Assignment
Assessment 2 : 20%
o Test (2 Tests)
Assessment 3 : 10%
o Practical (Coding Test)
Recommended Text Book : Liang, Y.D., Introduction to Programming with C++, 2nd Edition,
Pearson Higher Education, 2010.
References : 1. Malik D.S., C++ Programming: From Problem Analysis To
Program Design, 5th Edition, Thomson, 2011.
2. Farrell, Joyce, Programming Logic and Design
Comprehensive, 6th Edition, Course Technology, 2010.
3. Zak, Dianne, An Introduction to Programming with C++, 6th
Edition, Course Technology, 2011.
4. Stroustrop, Bjarne, The C++ Programming Language, 4th
Edition, Addison Wesley, 2013.
Faculty of Computer and Mathematical Sciences Page 4 of 4
Hak Cipta Universiti Teknologi MARA ©2013