There are several tests, all in front of computer
and consistent in resolving a problem.
During the course, there will be from 4 to 7 controls (including the partial exam) that evaluate the monitoring of the agenda contents up
to then. Teachers will be able to require that the
students deliver a few exercises of the collection
to be been able to present to the controls.
Let C be the weighted average of the controls. At the beginning of the course, the weights of each control will be made public.
In the period of exams, three tests will be
carried out (F1, F2 and F3) that evaluate the
totality of the contents. Not attending these tests will imply a qualification of NP.
Each problem is evaluated independently of the
others and receives a grading between 0 and 10 points,
according to the criteria that are given further
down on the correction of the problems. The final
note of the subject is
Max {(C + F1 + F2 + F3) / 4, (F1 + F2 + F3) / 3}.
Any attempt of fraud during the course will entail the application of the UPC's general academic normative and the beginning of a disciplinary process.
Problem correcting criteria:
A problem is defined with a description and one or more public tests.
Solving a problem consists on writing a correct program (according to the following) that passes all tests, both public and private. When a student considers his/her program is correct will send it to an automatic judge which, in a few seconds, will return a verdict about the behaviour of his program. No matter whether the program passes the private tests, the student can upload many solutions for the same problem. If, at the end of the exam, the student didn't send any program that passes all tests, the grade will be 0.
Otherwise, from all the successful programs, the teachers will manually correct the last one. If they detect that the student hasn't followed the basic programming rules, the program doesn't satisfy the problem or the algorithm is clearly inadequate, the grade will be 0
Otherwise, let v be the grade, between 0 and 5, given by the teachers to the corrected program (according to the clarity, style, etc), and let p be the number of programs sent that do not pass the tests. The grade is
5 + v - max{ p-1, 0 }.
According to this, a point on ten will be subtracted for each solution that doesn't pass the tests, but the first incorrect solution isn't penalized. Logically, a negative grade is converted to 0 (so 10 is the maximum number of incorrect uploads)