Exam and exam requirements
The exam will be organized as an in-person computer EXAM at the Otaniemi campus between December 8th and 21st, 2021. Make sure that you have also enrolled in the exam in Sisu (do this at least one week before the exam)! This
is necessary so that course grade registration succeeds. After enrolment, you can reserve a 175 minute time slot for participating in the exam in the EXAM studio class. In the exam, the questions are drawn from a large amount of questions, so that
each student will have a different set of questions. The EXAM platform instructions and schedules are given on the section
Exam in the EXAM studio.
Note: Course exercises completed in autumn 2019 with a passing grade are still valid in the exam that is organized in October 2020 and the exercises from summer 2020 are still valid in the exam organized in May 2020. Course exercises that are older than this are not valid anymore.
The
exam tasks are mostly programming exercises in which you have to either code programs or explain the functionality or print results of given programs or fix the bugs from given short programs. If the exam has essay-type questions or other explanation
tasks that are not directly related to a program code (e.g. explaining words or concepts), their portion of the total exam grade is at most 20 %. A lot of exams do not have these kinds of essay or explanation tasks at all.
A test run of a digital exam may be done. This exam has different questions than the main exam.
All topics from the course materials are included in the exam requirements, except for the following:
- Formatting print outputs using string formatting (the output either does not need to be formatted or the formatting commands are given)
- Tuples
- Dictionaries
- The following list functions and methods don't need to be remembered (if they are needed, they are given in the assignments): index, insert, remove, sort, sorted and reverse. Python list functions and methods that are not included in the course materials
are not required in the exam.
- The following string functions and methods don't need to be remembered (if they are needed, they are given in the assignment): index, lower and upper. Python string functions and methods that are not included in the course materials are not required
in the exam. Note! You still need to know how to create or handle strings.
The exam has one task on object-oriented programming. This task is equal in difficulty to Exercises 2 and 3 from Round 9 combined together. Roughly speaking, the task is to write a simple class and a main program that creates objects of said class
and calls its methods for the objects. The points from this task are 25 % of the total exam points. In practice, this means that the exam can be passed if no points are scored from the object-oriented programming task, but it is difficult to get a grade
of 3 or above. Here, object-oriented programming means the topics introduced in Round 9 of the course material. In addition to actual orient-objected programming, the exam may have tasks that require the usage of, for example, methods to handle lists,
strings, or files.
Tasks that test one's understanding of the code can for example be:
- What does the program given in the assignment print out?
- In a given program, what value does a variable/variables need to have so that the program prints out a specific line?
- What does a given program or a function do?
- What mistakes does a given program have?
Tasks that require writing code can for example be:
- Write a program that does a required task.
- Write a function that gets its parameters as specified in the assignment and returns a required value.
- There is a function X, the parameters and return value of which are given in the assignment (the code for the function itself may not be given). Write a program that does a required task using function X.
Completing these tasks may for example require the following:
- If-statement
- Repeat commands (loops)
- Handling lists or strings
- Writing a function (includes using parameters and return values)
- Writing into or reading from a file
- Handling exceptions with the try-except structure
Additionally, the exam always has one object-oriented programming task, which is elaborated on above.
As indentation is important in Python code, the code written in the exam tasks is to be indented clearly and accurately. If there are errors or confusion regarding the indentations, points are reduced from the solution. Use indentation of two spaces!
You can practice the exam using the practice exam of Basics in Programming Y1 that can be found from the A+ front page.
Special arrangements in the exam
If you need special arrangements in the exam, for example because of dyslexia or a disability, you need a certificate outlining the special arrangements you should get (e.g. more time to complete the exams) from your school's student services. Take the certificates
and reports you have received previously (e.g. certificates from your matriculation examination) with you when you go to the student services. Take into account that processing the case in student services can take some time, so get it done early. You
can use the certificate you get from student services in all courses in Aalto.
If you have the certificate about special arrangements in exams from the student services, notify the lecturer by email at least two weeks before the exam (but preferably even earlier so that necessary arrangements can be made).
If you are in need of special arrangements because of other reasons, you can always contact the lecturer about it by email. Please do so as soon as possible.