Info
The Final exam will be on Thursday, March 19 from 2:30pm to 4:20pm in KNE 120. If you require DRS accommodations for the final exam, please schedule to take the exam with the DRS Testing Center.
Overview¶
One of the goals of this course is to develop your computational problem-solving skills; this goes beyond just writing code in a code editor! One of the ways we assess your progress in building these skills is through written exams, which test your ability to evaluate (trace) code as Python does, debug code you haven’t written, and translate word problems into code that performs desired actions.
Format¶
This is a hand-written test, meaning electronic devices and external aids are prohibited. Any math on the exam will be limited to simple arithmetic.
Question types may include some of the following. Note: this is not an exhaustive list, nor will all of these formats appear. This list is meant to give you an idea of what might possibly appear on the exam:
- Given a program, function, or code snippet and possible inputs, what is the output?
- What is the value of variables X, Y, Z on line N?
- Find and fix N number of bugs in this code
- Fill in the code: Replace the blanks on line N with an appropriate statement or expression
- Evaluate expressions
- Write a function that takes … and returns …
Materials¶
You must bring the following to the exam:
- Yourself :)
- Your UW ID card.
- A writing implement. Responses must be written in pencil, or blue or black ink.
You may bring the following:
- A sealable water bottle.
- One sheet of paper, no larger than 8.5 x 11 inches with your own notes for reference (i.e. a “cheat sheet”):
- You may use both the front and back sides of the cheat sheet; it may be handwritten or typed.
- Additionally, we will provide you with a reference sheet as part of the exam packet that includes some documentation that you won’t have to memorize or include on your own cheatsheet.
You may NOT:
- Use any electronic or computing devices during the exam. This includes, but is not limited to, calculators, cell phones, headphones or earbuds, music players, wearable smart devices, etc.
- Bring any additional paper (including scratch paper — we will provide this to you) outside of your single cheat sheet.
Topics¶
All topics covered in class through Lecture 25 (March 6) are ‘in-scope’ for the final exam. The short list of those topics is:
- Variables, statements, expressions
- For loops,
range, nested loops - Conditionals
- Functions
- Lists/nested Lists
- File input/output (I/O)
- Dictionaries
- Nested structures
- Tuples
- Mutability
- Classes and objects
- Visualization
- Testing, debugging, and program errors
Sets and Itemgetter will NOT appear on the 26wi final exam.
Practice¶
Exams from past quarters are either completely different, contain possibly outdated practices, or simply happened at different points in the quarter. When in doubt about whether a topic will be covered, if an answer key seems different than you expect, or if you think there’s an error in one of these example exams ask on Ed.
To help you prepare, here are some past final exams along with their answer keys. For all past final exams, the following caveats apply:
- As such ALL print statements should have (). E.g.,
print()orprint("Hello") - Division (
/) always does float division. E.g.,1 / 2evaluates to0.5. (In past Python versions, it would have been0. That is no longer the case.) - We will not ask you to “draw the environment”.
- Many past exams refer to “stack frames”, we will not be asking you to solve problems involving these.
- The reference sheet and some exams mention “graphs”, we will not be asking you to solve problems involving these.
Past Exams¶
[We’re working on only selecting past exam problems that are in-scope for 26wi. We’ll release past exam problems soon.]