Topic outline

  • The course exercises can be found at the end of each module with the materials here on A+. There are nine modules and exercise rounds with weekly deadlines. Deadlines are on Thursdays at 11:00

    Note that A+ uses an automated grading system. It expects your programs' outputs to exactly match the example executions given in the exercise descriptions (as well as other test cases). In order to avoid typos or differences in phrasing, it is recommended that you copy the printed statements from the example executions and paste them into your code. At times, your code will also be manually reviewed at a later date. The score given by the automated grading is therefore preliminary and may be deducted if the submitted code is written poorly or if it does not solve the problem in the way outlined in the Exercise description.

    For each programming exercise, you will have 10 submission attempts. This means that, before submitting your code to A+, you should always run it locally to see that it matches the example executions given at the bottom of the Exercise description. The submission with the highest score will be your final score for that Exercise. Under some circumstances, such as if the automatic grader crashes or causes other issues, the course staff can grant additional submission attempts.

    A+ also utilises an automated similarity analysis tool, which will compare your code to other students' submissions. Cases of suspected plagiarism are taken very seriously and will be handled in accordance with the Aalto University Code of Academic Integrity. While giving other students helpful hints and guidance is encouraged, directly working together on the same code (or copying another student's code) is never acceptable. For further information, see Group work and plagiarism

    A note for experienced Python users: the A+ system does not support most modules from the Python Standard Library or any external libraries, so do not use these in your exercise submissions.  

    If you need help with the exercises, please attend one of our thrice-weekly Exercise Sessions or ask the question on our Slack workspace

    Exercise rounds and scoring

    The course exercises are divided into rounds. Each round has its own deadline. There are nine (9) rounds in total, of which the first eight (8) are mandatory. This means that you must get at least the minimum amount of points determined for each round to get a passing Exercise grade (see ways to make up for lost points below in the part Substitute exercises). In addition, you have to answer a mandatory feedback form for the round. If you get the minimum amount of points from each round (and have answered to the mandatory questions), you get the grade 1 from the course Exercises. You can get a better grade by collecting more points from the Exercises.

    The exercise rounds are:


    Opens
    (10:00)        
    Closes
    (11:00)        
    Percentage score
    required to pass
    Minimum score
    required to pass
    Round 1: Python basics 13.09.2021 23.09.2021  70 %  360
    Round 2: Control structures 13.09.2021 30.09.2021  50 %  295
    Round 3: Control structures II 16.09.2021 07.10.2021  50 %  325
    Round 4: Functions 16.09.2021 14.10.2021  50 %  360
    Round 5: Lists, strings and dictionaries 23.09.2021 21.10.2021  50 %  335
    Round 6: More on lists, strings and dictionaries     30.09.2021 04.11.2021  56 %  400
    Round 7: Exceptions and file handling 07.10.2021 11.11.2021  56 %  370
    Round 8: File handling II 14.10.2021 18.11.2021  56 %  385
    Round 9: Classes and objects 28.10.2021 02.12.2021  59 %  600
    Substitutive exercises 18.11.2021 16.12.2021  n/a  n/a
    Round 9: Classes and objects

    While rounds 1 – 8 are mandatory, the final round of exercises, Round 9, is not required to pass the course. Note that, if you choose to skip Round 9 (or if you do not get a passing grade in it), the highest possible grade you can get for the Exercises (as a whole) is 2. If you want to reach a grade higher than 2, you will also need to pass Round 9. (The minimum points in total are not enough for the grade 3 but, the grade 3 or more cannot be achieved without the minimum points from round 9.)

    Substitutive exercises

    If, for a given round of exercises, you receive a total score below the accepted minimum, you can complete a substitutive exercise to make up for that round. You can substitute up to three of the mandatory rounds and the object-oriented round. The course has four substitutive exercises, which will open on A+ in November 2021. One substitutive exercise has to be done for each round that needs to be substituted. In order to substitute the round, you must achieve the minimum score for the respective substitutive exercise. The substitutive exercise only replaces the round up to its minimum points, which means that you cannot receive high marks for the round that you are substituting.

    VIDEO: How to troubleshoot in programming

      

      

    VIDEO: If - elif - else explained

     

      

    • Student must submit this questionnaire to complete it

      The sole purpose of this questionnaire is to get a better understanding of our audience. We would like to better understand who our students are and what is their background knowledge. It is anonymous and we will not use this questionnaire for anything else than to adapt this course to you.

    • Student must submit this questionnaire to complete it

      The sole purpose of this questionnaire is to get a better idea about how you feel about this course and the lectures. We would like to better understand what you like about this course and what you would want us to improve.

      This questionnaire is mandatory and anonymous. We will not use the results of this questionnaire for anything else other than to adapt the course to the students' needs.