Points scheme for the exercises
For programming tasks (code)
Functionality: 60% Tests: 20% Documentation, Checkstyle, etc. 20%
Example: Your program written for a 5-point subtask works in principle, but there are no tests and no documentations and there are many checkstyle errors. Then you will get only 3 of 5 points.
Important:
If your code does not compile (make compile for Python and C++, ant compile for Java), the exercise will not be graded (= 0 points).
Rationale: otherwise it's a pain for your tutor to look at your code and to find mistakes.
Tests specified in the TIP file must be implemented, otherwise the exercise will not be graded (= 0 points, the content of the test cases is important, not the exact syntax).
Rationale: you just have to do it, do it.
If tests are not specified, you must write one non-trivial unit test per non-trivial method yourself, otherwise 50% of the points are subtracted.
Rationale: a method that is not tested, is usually not correct.
If there are checkstyle errors on Jenkins, your exercise will not be graded (= 0 points).
Rationale: you just have to do it, do it.
If you do not document your code, you risk point subtraction.
Rationale: you just have to do it, do it.
For theoretical tasks (proofs)
Basic idea / approach: 40% Line of argument: 60%
Example: If you only write down the basic, correct proof idea in some vague sentences, you will get only 40% of the points. However, if your proof idea is wrong, you will get 0 points.
Important: Minor mistakes in your proof are ok and don't lead to any points deduction. But it should be obvious, that you have made some reasonable effort to show the proof.