/Teaching/System Level Programming/Assignments/A1
A1: Bonus Assignment
WS 2026/27: The mandatory A1 entry test is cancelled. A1 counts only as an optional bonus assignment worth up to 2 points. There is no mandatory A1 pass requirement. The crossed-out information below does not apply this year.
A1: Entry Test — cancelled
A1 is a mandatory, repeatable partial assessment. It has two attempts:
- First attempt: Friday, 2 October 2026, 17:00
- Second attempt: Tuesday, 6 October 2026, 17:00
Format and scope
The entry test is a live-coding task in the same format as the practicals exam. It checks essential prior knowledge from Introduction to Structured Programming.
- Basic C and C++ programming
- Pointer arithmetic
- Introduction to Structured Programming material
- Basic Git usage, including creating a commit
Assessment
You must achieve at least 50% in A1 to pass the course. The lecture exam and the practicals exam (A8 or A9) must also each be passed with at least 50%. These minimum requirements apply separately; a higher score in another component or bonus points cannot compensate for a score below 50%.
Participation in A1 constitutes participation in a mandatory partial assessment. A graded second-chance submission replaces the first-chance score, even when the second-chance score is lower or zero.
Preparation
Bring a working development environment and ensure that you can use Git from the command line.
Practical workflow
Use the ungraded demo to practise extracting the task, compiling, committing, pushing, and checking server feedback before the graded entry test.
- Run
make extractA1to extract the A1 task. - Run
make startto start working with the supplied task and build setup. Complete the C and C++ work inA1/input.candA1/report.cpp. - Run
make checkfor local checks. - Run
make commitA1to commit your A1 work. Committing works offline. - When online, push the branch and explicitly update and push the
A1submission tag so that it points to the commit you intend to submit. - Check the server log and verify that its tested commit is the intended submission commit. Passing local checks alone does not confirm submission.
Your submission contains A1/input.c and A1/report.cpp. Follow the supplied workflow for the demo and each graded attempt.