Information for the 1st Practical Test
General Information
- Date: 05/11/2025 (wednesday)
- Time: There will be two shifts for the test (14:30 and 16:30)
[the allocation of students to a particular shift and computer lab will be given at most on the early morning of 04/11/2025]
[see student allocation to shift and room]
- Place: DCC Labs (FC 6)
- Duration: 2h
- Method: the test will be individual and will consist of practical problems for which you can submit Python code to Mooshak and receive feedback that might include public test cases, like in the practical classes
- Language: all problem statements will be available in english and in portuguese
- Environment: the computers will have Linux, with python available at command line, and the usual editors and IDEs; you will have access to documentation (local copy of python docs) and to a local copy of the jupyter notebooks of the lectures (an html static version).
- Scoring: this test is worth 4 points out of 20 (20% of your class grade) [see explanation and calculation formula of final grade]
You will have 7 small exercises in Mooshak worth 20%+20%+15%+15%+15%+10%+5%.
In each exercise there might be partial scoring (e.g. passes some tests, fails on others).
When submitting, you will know the score you got on all tests. Your grade on a problem will be the grade of your best submission on that problem (the one with the highest score), and you can submit as many times as you want (subject to 60 seconds wait between submissions).
Specific goals for each exercise and training problems
- [20%] Exercise 1: a simple program (variables and operators)
Something at the level of the exercises of practical class #01 (first programs), reading with input().
- [20%] Exercise 2: conditionals and program flow
Something at the level of the main or extra exercises of practical class #02 (conditionals and program flow), reading with input().
- [15%] Exercise 3: functions
Something at the level of the main exercises of practical class #03 (functions), writing a function that receives input from the arguments.
- [15%] Exercise 4: tuples and strings
Something at the level of the main exercises of practical class #04 (tuples and strings), writing a function that receives input from the arguments.
- [15%] Exercise 5: lists
Something at the level of the main exercises of practical class #05 (lists), writing a function that receives input from the arguments.
- [10%] Exercise 6: extra exercises
Something at the level of the the extra exercises (from practical classes #03 to class #05), harder main exercises or easier challenges.
- [5%] Exercise 7: challenge
Something at the level of a challenge (from practical classes #03 to class #05), in which the algorithm is more complex and/or efficiency might matter (i.e., an innefficent solution might not have enough time or memory to pass).