Class Attendance in 2023

The first day of teaching for this subject is Tuesday, February 28, 2023.

The lecture will be held from 12PM to 1PM and in Kwong Lee Dow 230. Arrive early to secure a seat!

Overview

In many projects, it is important for programmers to have fine control over low-level details of program execution, and to be able to assess the cost of a design decision on likely overall program performance. This subject introduces students to a system programming language that gives programmers this kind of control, explores a range of standard data structures and algorithmic techniques, and shows how to apply them to frequently encountered problems.

Learning Materials

The subject is divided into 12 weeks. The class will provide some review slides, as well as lecture presentation slides after the fact.

One key way to make progress in this class is to follow our textbook, which will cover required content not addressed in lecture. Our textbook is the venerable:

Programming, Problem Solving, and Abstraction with C

by Alistair Moffat (revised edition, Pearson, 2012)

The web page at http://people.eng.unimelb.edu.au/ammoffat/ppsaa/ includes an errata listing that you might like to print.

A complete set of the programs used in the book is available from http://people.eng.unimelb.edu.au/ammoffat/ppsaa/c/.

Subject Communication

Please keep up-to-date and always check the Announcements in Ed

Post any questions to the Ed Discussion page. Read other posts and responses while you wait for a response to your query.

For sensitive inquiries use your student email address and put [COMP10002] in the subject field or attend office hours as listed on the staff page.

The assessment structure is as follows:

Syntax Timing (tenative) Weighting
Problem Sets Weeks 2-9 5%
Mid-Semester Test Week 6 15%
Two Assignments Week 8, Week 11 40%
Exam   40%

Each week, starting from week two and until week seven, there will be a problem set to complete. Each set is worth 1% for a maximum attainable total of 5%.

There will be a mid-semester test in Week 6 (tentative) worth 15% of your final mark. Details of the mid-semester test will be made available closer to the date of the test. To help you prepare, a sample test will also be provided.

There will also be regular project work, to be completed during (and then after) the workshops, including two assessed programming projects that account in total for 40% of your final grade.

The written 1.5-hour examination at the end of semester is worth 40% of your overall mark. The exam will require detailed knowledge of the workshop exercises and projects, so it is important that you understand all of the programming work.

A sample exam will be made available closer to the date of the exam.

To pass the class you must attain all of the following:
50% overall across all assessments
16/40 on the programming assignments
22/55 combined across the mid-semester test and exam