This programming exercise involves writing software to help with the task of timetabling courses for a fictitious university. The mathematics department at UWGC offers 24 modules with codes A1..A8; B1..B8 and C1..C8. It has five classrooms for its exclusive use: rooms 1 and 2 have 20 seats, room 3 has 30 and rooms 4 and 5 can each take 50 students. Classes can be scheduled to begin on the hour from 9.00 till 16.00 each day of the week (except Wednesday when the last class is at 12.00). The timetabler needs software to perform the following tasks: • to print the current state of the timetable