Programming Fundamentals

Instructor: Arbish Akram


This course introduces the foundational concepts of programming using C++. Students learn problem solving, algorithm design, and the core constructs of structured programming including variables, control flow, functions, arrays, and pointers. No prior programming experience is required.

Text

  1. C++ How to Program by Paul J. Deitel and Harvey Deitel, 8th Edition
  2. Starting Out with C++ by Tony Gaddis, 8th Edition

Grading

Assignments Quizzes Midterm Exam Final Exam
5%25%20%50%

Schedule

Week Topics Slides Quizzes Assignments
1
Introduction to Programming
Compiler vs. Interpreter, C++ Development Environment
Slides
2
Variables and Operators
Data Types, Assignment and Relational Operators
Slides Q1
3
Conditional Logic
Logical and Bitwise Operators, Unary Operators, if / if-else / if-else-if
Slides
4
Conditional Statements
Nested if, switch, Menu-Driven Programs, Character Comparison
Slides Q2 A1
5
Loops
while, do-while, for
Slides
6
Functions
Global vs. Local Variables, Call Stack and Activation Records
Slides
7
Functions II
Pass-by-Value vs. Pass-by-Reference, Inline Functions, Static Variables, Overloading
Slides Q4
8
Midterm Exam
9
Arrays
Declaration and Initialization, Out-of-Bounds Access, Passing Arrays to Functions
Slides
10
Arrays II
Character and String Arrays, Static vs. Automatic Local Arrays, Constant Arrays, Multi-dimensional Arrays
Slides
11
Arrays III
Linear Search, Binary Search, Bubble Sort, Selection Sort
Slides Q5 A3
12
Recursion and Pointers
Declaration and Initialization, Reference and Dereference Operators, Pointer Operators
Slides
13
Pointers II
Pass-by-Value vs. Pass-by-Reference, Pointer Arithmetic, Passing Pointers to Functions, Pointers and Arrays, Arrays of Pointers
Slides Q6 A4
14
Structures and Dynamic Memory
Structures, Dynamic Memory Allocation
Slides Q7 A5
15
File Processing
Reading and Writing Text Files, ifstream and ofstream, Formatted File I/O
Slides
16
Pseudo-Random Number Generation
rand() and srand(), Generating Numbers in a Range, Simple Simulations
Slides Q8 A6

Assignments

Policies

Attendance is mandatory. All submitted work must be your own; plagiarism will result in a zero grade for the assessment.