The exam consists in:
·
A
written part (maximum duration 2h30)
·
An
oral exam.
The written part includes:
·
Exercises/questions
on theoretical aspects, maximum 12 points, maximum duration 50min
·
A
programming part, maximum duration 1h40, available in 2 alternative modes:
·
Design
and development of a program in C to solve a problem, the emphasis being on
problem-solving and design skills (max 18 points)
·
Guided
development of the solution to a problem, with less emphasis on design and
problem-solving skills and more on the ability to use advanced C features
(pointers, dynamic allocation, recursion) and on the knowledge of basic data
structures and algorithms (max 12 points).
Both modes require the same approach to the
subject.
Material
available during the written part:
·
A
C manual (e.g., Kernighan & Ritchie, Deitel &
Deitel, or similar).
·
Header
files for standard functions/ADTs unless explicitly forbidden.
·
No other
books, notes, transparencies, etc.
·
No
electronic communication tools (cell phones, tablets, laptops, etc.).
Each
student must:
·
Make
a copy of the program at the end of the written part (using carbon copy paper,
cell phones, cameras, etc.).
·
Verify
the correctness of the program.
·
Upload
on the course webpage within 3 working days: a report (max 3 pages) describing
the solution (data structures, algorithm, etc) and a
copy of the working program, showing the changes with respect to the version
handed in for ranking. See related documents for more details on how and what to
upload.
In case the
above material is not uploaded, the written exam will not be ranked.
Students whose mark in the written part is
larger ot equal to 15/30 are entitled to sit for the
oral exam. The oral exam consists in:
·
Questions
on all the topics of the course, the goal being to rank the grade of
theoretical knowledge.
·
Programs
in C to evaluate skills related to the implementation and manipulation of data
structures by means of advanced C programming constructs and to the
implementation of variants of standard algorithms.
·
Questions
on uploaded laboratory exercises.
The final mark integrates partial results and
is not a mere average. Laboratory bonusses are not
added to, rather they are included in the final mark.