Warning

# Algorithms - exams

Organization

The exam consists of the theoretical and the programming part.
At the theoretical part the student is given a few questions (typically about 4-5) and writes down main lines of the solution. Sometimes a question might demand a more detailed written solution (a code, a list of cases etc). The teacher will discuss the solution with the student and determine the grading. Each question should be solved with at lest 50% success. If a student fails to achieve 50% success in a question he/she will be given another broader auxiliary question. The auxiliary question must be solved more or less completely correctly. If this solution is correct the original question is considered to be 50% successful. If the solution of the auxiliary question is not satisfactory the whole theoretical exam part is evaluated as unsuccessful.
No additional sources including printed and electronic may be used at the theoretical part.

At the programming part the student must solve a programming problem similar (and somehow simpler) to the semester programming homeworks. There are 10 data input files associated with the problem and the student's code must yield a correct solution of at least 5 files. The programming part lasts 4 hours (240 min). In the first 30 minutes of this part it is not allowed to write a code. This time is intended for individual analysis of the problem. A student can bring to the programming part any printed or electronic sources.

Consecutive terms
A student which fails at any part of the exam (theoretical or programming) may repeat this part in any of later exam terms and does not have to repeat the remaining part. His/her results in the other part are not affected. When a student repeats some part more times only his/her best result from all terms of this part is graded. In total each student can take part in at most three terms of the theoretical part and three terms of the programing part.

Exam terms and locations

Will be specified at the end of the semester.

Each exam programming part takes place from 8:30 to 12:30 in the lab 115 in Dejvice. 

Programing environment:

========================================
Windows:
Visual studio 2010 Express edition ver. 10.0.30319.1 RTMRel
with .NET Framework
NetBeans 6.9.1 (s jdk 1.6.x) with C++ plugin

Linux:
NetBeans 6.9 (with Java 1.6.0)
Eclipse 3.5.2 with C++/C plugin
javacc
gcc
gdb

(SW might be updated during the semester)


At the exam, a total of the following is computed:
Points gained by solving homeworks. Acceptable minimum is 10.
Points gained by solving the programming part. Each correctly processed input file of total 10 files is worth 1 point, acceptable minimum is 5 points.
Points gained by solving the theoretical part. Acceptable minimum is 8 of maximum 16 points. The amount of points gained is decided by the examiner.


39  -  42       A