Namal University Mianwali
Department of Computer Science
1. COURSE DETAILS
Course Title: Programming Fundamentals
Course Code: CSC-100
Credits (Theory + Lab): 4 (3 + 1)
Lecture Hours/Week: 3
Lab Hours/Week: 3
Pre-Requisite: Nil
Brief Course Description:
The course is designed to familiarize students with the basic structured programming skills. It
emphasizes upon problem analysis, algorithm designing, program development and testing. Basics of
input and output, selection and decision (if, if-else, nested if-else, switch statement and condition
operator), repetition (while and for loop, do-while loops), break statement, continue statement, control
structures, functions, arrays, pointers, records, Files (input-output), testing & debugging.
2. INSTURCTOR DETAILS
Name: Mr. Abdul Rafay
Lecture Timings: According to the timetable.
Office Hours: Tuesday Slot 3
Wednesday Slot 1
Thursday Slot 1
Office Location: CS Faculty Cabin No 17
Office Phone: 0459-236995, Ext. 179
Email: [email protected]
3. COURSE UNIT WISE MAJOR TOPICS
No of Teaching
Unit No. Topics
Hours
Computer Programming: Fundamental Concepts and Programming
1 3
Paradigm and problem solving.
Basic Syntax & Semantics of a Higher-Level Language, Variables &
2 3
Primitive Data Types; Expressions & Assignments; and Simple I/O.
3 Conditional & Iterative Control Structures 12
4 Functions & Parameter Passing; and Recursion 10.5
5 Arrays: 1-D array, Multi-dimensional array. 4.5
6 Pointers, References, Structures. 7.5
7 Exception Handling; Refactoring, Debugging and File I/O. 4.5
Total Contact Hours 45
4. COURSE LEARNING OUTCOMES (CLOs)
Unit
Sr. No CLO Statement Taxonomy Level GA
No
CLO’s for Theory
Define basic problem solving steps and
CLO-1 1 C1 1
logic constructs.
Apply fundamental programming
CLO-2 2-6 C3 2
techniques to develop simple programs.
Analyze code to debug common
CLO-3 7 C4 3
programming errors and issues.
Design and develop algorithms to solve real
CLO-4 2-6 C5 4
world problems.
CLO’s for Lab
Apply fundamental programming
CLO-1 2-6 C3 2
techniques to implement simple programs.
Analyze code to debug common
CLO-2 7 C4 3
programming errors and issues.
Implement algorithms to solve real world
CLO-3 2-6 C5 4
problems.
5. WEEKLY LECTURE BREAKUP
Reference
Lecture Unit
# #
Topics Covered in Class Topics Covered in Lab in Book /
Assessments
Programming Basic Concepts
Why we need C++
1 1 TB: Ch #1
What is Compiler?
What is Computation?
Installation of Code Blocks. Compiler
What is Algorithm?
Configuration.
Analytical Problem Solving
Solving some computational
2 1 problems theoretically. (Problem TB: Ch #1
analysis, logic building)
Introduction to C++
TB: Ch #2
Using cout
3 2 Introduction to variable
Why generic coding is important
Printing different statements, variable Assignment
Introduction to Iteration
declaration practices, simple variable 1
assignments tasks.
Introduction to data types
4 2 Data type integers and operators TB: Ch #2
Example codes
Introduction to Loops
5 3 What are loops? For Loop, Syntax, implementation, TB: Ch #3-4
For loops While loop.
Example codes
While Loops
6 3 TB: Ch #3-4
Example codes.
Do-While loops
7 3 TB: Ch #3-4
Example codes
Do-While loop, Nested loops
Nested Loops
8 3 TB: Ch #3-4
Example codes
Control Structure
9 3 IF statements TB: Ch #3-4
IF-Else Statements If Statement, If-else Statement, Nested
Example codes if Statement, Nested if else Statement.
TB: Ch #3-4
Practice questions related to control
10 3
structures.
Quiz 1
TB: Ch #3-4
Compound Statements (AND and
11 3 OR) Relational Operators, Logical
Example codes
Assignment
Operators, switch statements practice
questions.
2
Switch Statements
12 3 TB: Ch #3-4
Example codes
Introduction to Functions
What is function?
13 4 Prototype of a function
TB: Ch #5
Implementing the concepts of functions
Example codes studied during class.
Types of functions
14 4 TB: Ch #5
Example codes
Calling of a function
15 4 Parameter passing in the functions TB: Ch #5
Implementing the concepts of function
Example codes
calling and different tasks
implementation related to it. TB: Ch #5
16 4 Practice questions related to Functions.
Quiz 2
Mid Term Exam
Introduction to Recursion
17 4 Recursive functions TB: Ch #5
Example codes Implementation of different problems
Types of Recursion using recursion.
18 4 Example codes TB: Ch #5
Recursion vs iteration.
Using the concepts of functions with Loops
19 4 to implement and print interesting shapes TB: Ch #5
with example codes Printing different types of shapes to
sum up all the concepts studied earlier TB: Ch #6
Arrays i.e. loops, conditions, functions, and
20 5 1-D arrays recursion.
Assignment
Example codes
3
2-D arrays
21 5 Example codes Implementing the concepts of arrays TB: Ch #6
Passing arrays to functions studied during class with some problem
Game development using arrays questions.
22 5 TB: Ch #6
in C++
Structures
TB: Ch #10
Concepts.
23 6 Declare a structure. Implementation of Structures.
Define a structure Assignment
Access members 4
Structure vs arrays
TB: Ch #10
24 6 Passing structures to functions
Structure pointers
Introduction of References
Reference initialization TB: Ch #7
25 6 Reference variable
Passing arguments by Project
Implementing the concepts of
reference. references studied during class.
Returning by reference
26 6
Reference to member TB: Ch #7
variable.
Example codes
Pointers
Address and Pointers
TB: Ch #7
27 6
Example codes
Implementing the concepts of pointers
File handling
studied during class.
Concepts TB: Ch 11
28 7 Syntax
Usage of file handling.
29 7 Operations like create, delete,
Practically implementing all the
TB: Ch #11
read, write, and search a file
operations studied in the class related to
Practice questions related to References, file handling.
30 6-7 Quiz 3
pointers and file handling.
31 Project Presentations
32 Project Presentations
Final Term Exam
6. CLO ASSESSMENT MECHANISM
Assessment Tool CLO1 CLO2 CLO3 CLO4
Quizzes ✔ ✔ ✔ ✔
Assignments ✔ ✔ ✔ ✔
Projects ✔ ✔ ✔ ✔
Lab ✔ ✔ ✔
Mid Term Exam ✔ ✔ ✔ ✔
Final Term Exam ✔ ✔ ✔ ✔
7. TEACHING MATERIAL
Text Books:
1. C++ How to Program, Paul Deitel and Harvey Deitel,10th edition, 2016.
Reference Material:
1. C++ Programming from Problem Analysis to Program Design - D. S. Malik – 2011
2. https://www.learncpp.com
3. Programming in C, Stephen G. Kochan, Addison-Wesley Professional, 4th edition, 2013.
8. POLICY & PROCEDURES
Attendance Policy: Students must attend 75% of this course's lectures and laboratory work. Students who
fall short of the required attendance percentage cannot appear in the terminal examination.
Plagiarism Policy: Namal University's rules and regulations prohibit plagiarism, copying, and other
dishonest behavior. Violators will face serious disciplinary action.
Course Assessment:
Assessment Quiz Assignment Lab Task Project Mid Term Final Term Total
Tool Exam Exam
Theory (T) 10 15 - 10 25 40 100
Lab (L) - - 40 10 20 30 100
9. VERIFICATION
(i) I verify that the content of this document is correct and up-to-date.
Mr. Abdul Rafay
Instructor’s Name and Signature Date
(ii) I have reviewed course-outline and state that it complies with Namal University policies and
guidelines.
Dr. Muhammad Ali Shahid _____________
Name and Signature of Head of Department Date