Credit Hours: | 341 Prerequisites: _[ None
Course Learning Outcomes (CLOs):
At the end of the course the students will be able to: Domain | BT Level”
1. Understand basic problem solving steps and logic c >
constructs
2. Apply basic programing concepts c 3
3. Design and implement algorithms to solve real world] 5
problems, 7 3
¥ BT Bloom's Taxonomy, C—Cognitive domain, P-Psychomotor domain, A~
Affective domain
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
Teaching Methodology:
Lectures, Written Assignments, Practical labs, Semester Project, Presentations
Course Assessment:
Sessional Exam, Home Assignments, Quizzes, Project, Presentations, Final Exam
Reference Materials:
1. Starting out with Python, 4" Edition, Tony Gaddis.
2. Starting out with Programming Logic & Degins, 4" Edition, Tony Gaddis,
3. The C Programming Language, 2 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, 2" Edition by Guttag, John
6. Practice of Computing Using Python, 3" Edition by William Punch & Richard
Enbody
7. C How to Program, 7" Edition by Paul Deitel & Harvey Deitel
8. Problem Solving and Program Design in C++, 7 Edition by Jeri R. Hanly & Elliot
B. Koffman
125