Learn with Yasir

Share Your Feedback

CS-303 Programming Fundamentals – Course Outline, Learning Outcomes & Study Materials


Explore the CS-303 Programming Fundamentals course outline, including learning outcomes, problem-solving techniques, programming concepts, course assessment, and reference materials.

CS-303 Programming Fundamentals

Course Information

  • Course Title: Programming Fundamentals
  • Course Code: CS-303
  • Credit Hours: 3 (3-0)

Course Learning Outcomes (CLOs)

By the end of this course, students will be able to:

  1. Understand basic problem-solving steps and programming logic constructs.
  2. Apply fundamental programming concepts to solve computational problems.
  3. Design and implement algorithms to solve real-world problems.

Course Contents

1. Introduction to Computing and Programming

  • Introduction to problem-solving
  • Brief review of Von Neumann architecture
  • Introduction to programming
  • Role of compiler and linker
  • Introduction to algorithms

2. Programming Fundamentals

  • Basic data types and variables
  • Input and output operations
  • Arithmetic, comparison, and logical operators

3. Control Structures

  • Conditional statements
  • Execution flow of conditional statements
  • Repetitive statements (loops)
  • Execution flow of repetitive statements

4. Lists and Memory Organization

  • Lists and their memory organization
  • Multidimensional lists

5. Functions and Modular Programming

  • Introduction to modular programming
  • Function definition and function calls
  • Function stack: calling, rolling, and unrolling

6. Strings and Memory Management

  • Strings and string operations
  • Pointers and references
  • Static and dynamic memory allocation

7. File Handling

  • File input and output (File I/O) operations

Teaching Methodology

  • Lectures
  • Written assignments
  • Practical laboratory sessions
  • Semester project
  • Student presentations

Course Assessment

Sessional Exam, Home Assignments, Quizzes, Project, Presentations, Final Exam

Assessment Component Weightage
Midterm Examination 30%
Sessional Assessment 10%
Final Examination 60%
Total 100%

Reference Materials

  1. Starting Out with Python, 4th Edition — Tony Gaddis.
  2. Starting Out with Programming Logic and Design, 4th Edition — Tony Gaddis.
  3. The C Programming Language, 2nd Edition — Brian W. Kernighan and Dennis M. Ritchie.
  4. Object-Oriented Programming in C++ — Robert Lafore.
  5. Introduction to Computation and Programming Using Python: With Application to Understanding Data, 2nd Edition — John V. Guttag.
  6. Practice of Computing Using Python, 3rd Edition — William Punch and Richard Enbody.
  7. C How to Program, 7th Edition — Paul Deitel and Harvey Deitel.
  8. Problem Solving and Program Design in C++, 7th Edition — Jeri R. Hanly and Elliot B. Koffman.