Programming Fundamentals Using C++

Assignments & Exams

Eight graded programming assignments (one every ~2 weeks), 40 marks each, drop-lowest-1. Every folder: assignment.md (student spec) + instructor_key.md (restricted; contains reference solutions — compiled & executed under the course contract — hidden-case classes, and common defects).

#FolderTopicModulesDue
1assignment_01Course Record Card — variables, I/O, arithmeticM1–M2Week 3
2assignment_02Tuition Estimator — decisions & validationM3–M4Week 5
3assignment_03Collatz Explorer — loops + first functionsM5–M7Week 7
4assignment_04Interval Math Library — overloading, defaults, recursion, referencesM8Week 9
5assignment_05Sensor Array Analytics — 1-D arraysM9Week 10
6assignment_06Campus Grid — 2-D arraysM10Week 11
7assignment_07Text Toolkit — strings & sortingM11–M12Week 13
8assignment_08Score Ledger — structs, files, synthesisM13–M15Week 15

Difficulty ascends from guided (A1–A2) through decomposition (A3–A5) to synthesis (A6–A8). A8 doubles as practical-exam preparation: its skill band (structs, vectors, robust file parsing) is the same as the practical's task 3.

Grading

Per-assignment: correctness 30 (instructor/assessment-rubrics/correctness.md), postmortem 10 (explanation.md); the test table feeds correctness lines (testing.md). Code quality is graded on the shared programming_quality.md scale via the correctness gate: artifacts that fail the compile gate score 0.

CLO mapping

A1 → CLO-1/2 · A2 → CLO-2/3 · A3 → CLO-3/4/5 · A4 → CLO-5 · A5/A6/A7 → CLO-6 · A8 → CLO-7/8. Full map: ../../docs/ASSESSMENT_AUDIT.md §3.

Integrity

Assignments are individual. Reference solutions live only under instructor/; never publish keys with the specs. See ../../instructor/ACCESS_CONTROL.md.

The eight assignments

  1. Assignment 1 · Course Record Card — Variables, I/O, Arithmetic
  2. Assignment 2 · Tuition Estimator — Decisions & Validation
  3. Assignment 3 · Collatz Explorer — Loops + First Functions
  4. Assignment 4 · Interval Math Library — Advanced Functions
  5. Assignment 5 · Sensor Array Analytics — 1-D Arrays
  6. Assignment 6 · Campus Grid — 2-D Arrays
  7. Assignment 7 · Text Toolkit — Strings & Sorting
  8. Assignment 8 · Score Ledger — Structs, Files, Synthesis

Exam review guides

Programming Fundamentals Using C++ · C++17 · 16 weeksBack to top ↑