COURSE DESCRIPTION

NAME OF INSTITUTION Lahore Garrison University
PROGRAM (S) TO BE EVALUATED Computer Science , Spring 2023
Course Description : Introduction to problem solving, a brief review of Von-Neumann architecture, Introduction to programming, role of compiler and linker, introduction to algorithms, basic data types and variables, input/output constructs, arithmetic, comparison and logical operators, conditional statements and execution flow for conditional statements, repetitive statements and execution flow for repetitive statements, lists and their memory organization, multi-dimensional lists, introduction to modular programming, function definition and calling, stack rolling and unrolling, string and string operations, pointers/references, static and dynamic memory allocation, File I/O operations
Course Code CSC313
Course Title Programming Fundamentals
Credit Hours 3+1
Prerequisites by Course(s) and Topics N/A
Assessment Instruments with Weights (homework, quizzes, midterms, final, programming assignments, lab work, etc.) SESSIONAL (Quizzes, Assignments, Presentations) =25 %
Midterm Exam =25 %
Final Exam = 50%
Course Coordinator Ahsan Ayaz
URL (if any)
Current Catalog Description Introduction to problem solving, a brief review of Von-Neumann architecture, Introduction to programming, role of compiler and linker, introduction to algorithms, basic data types and variables, input/output constructs, arithmetic, comparison and logical operators, conditional statements and execution flow for conditional statements, repetitive statements and execution flow for repetitive statements, lists and their memory organization, multi-dimensional lists, introduction to modular programming, function definition and calling, stack rolling and unrolling, string and string operations, pointers/references, static and dynamic memory allocation, File I/O operations
Textbook (or Laboratory Manual for Laboratory Courses) How to write C++ program (Seventh Edition) By Deitel deitel
Reference Material 1. Starting out with Python, 4th Edition, Tony Gaddis. 2. Starting out with Programming Logic & Degins, 4th Edition, Tony Gaddis, 3. The C Programming Language, 2nd Edition by Brian W. Kernighan, Dennis M. Ritchie 4. Object Oriented Programming in C++ by Robert Lafore 5. Introduction to Computation and Programming Using Python: With Application to Understanding Data, 2nd Edition by Guttag, John 6. Practice of Computing Using Python, 3rd Edition by William Punch & Richard Enbody 7. C How to Program, 7th Edition by Paul Deitel & Harvey Deitel 8. Problem Solving and Program Design in C++, 7th Edition by Jeri R. Hanly & Elliot B. Koffman
Course Goals The Goals the course is: • To get familiar with Programming language of computer science by studying different theoretical computational models. • To understand different formal language and their relationships • To learn the problem-solving skills. • How theory of automata is helpful to design of new programming techniques, etc. • How can we formally define the languages so that they are unambiguous?
Course Learning Outcomes (CLOs):
At the end of the course the students will be able to:DomainBT Level*
understand and utilize concepts: Variables, Operators, Statements, Functions C 1
use fundamental programming constructs: sequence, repetition, conditional logic and branching C 3
develop programs in a functional form C 3
process data in arrays P 4
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A= Affective domain
Topics Covered in the Course, with Number of Lectures on Each Topic (assume 15-week instruction and one-hour lectures)
WeekLectureTopics Covered
Week 1 1 Introduction to Programming
2 Problem Solving Method
Week 2 3 Basic syntax of C
4 Algorithm in c
Week 3 5 Introduction to Flow chart
6 Basic programs.
Week 4 7 Arithmetic’s operators
8 Increment decrement operators.
Week 5 9 Quiz conducted
10 Local global variables.
Week 6 11 Conditional operators.
12 If statement If else, else if
Week 7 13 nested if, Switch, Loops,
14 WHILE ,do-While, For loop.
Week 8 1 hours Mid Term
Week 9 15 Arrays
16 Insertion and deletion.
Week 10 17 Searching in Array.
18 Sequential search, Binary search, Sorting
Week 11 19 2-D Array.
20 Searching in 2-D array.
Week 12 21 Assignment and quiz conduct.
22 Functions.
Week 13 23 Functions type, scope, life, call
24 Local global functions, parameters/arguments.
Week 14 25 Functions with array, functions with loops. Call by value call by reference.
26 Function over riding, function overloading
Week 15 27 Pointers, addresses,
28 Pointers with functions/array/loops.
Week 16 29 File I/O operations
30 Practice file handling
Week 17 2 hours Final Term
Laboratory Projects/Experiments Done in the Course
Programming Assignments Done in the Course
Instructor Name Ahsan Ayaz
Instructor Signature
Date