Midterm Grades are released

Notes:

  • See Gradescope for your scores.
  • The median score was 70.5%
  • The point values for questions 2 and 7 were cut in half. This weights them lower compared to the other questions.
  • Regrade requests open on Feb 15th at 5pm and close on Feb 22nd at 5pm (one week later).
    • Regrade requests are only used to fix errors and mistakes in grading.
  • The Final exam will have so-called “clobbering questions” – the scores you receive for certain questions on the Final will also overwrite the score you got on the matching Midterm question if the score (on the Final) is higher.
    • These will be clearly marked on the exam. Additional details will be discussed and released closer to the end of the quarter.

The answer key is available here.

  • For some of the questions, there are multiple correct answers. This answer key only shows one possible correct answer and may not match exactly your correct answer.

Prep information below

Info

The Midterm exam will be during class time on Wednesday, 1st Feb 2023. Be on time! We will aim to start promptly at 3:35pm in order to give as much time as possible to complete the exam. No matter when you arrive, we will “call time” (pencils down, exam is done) at exactly 4:20pm. As such, if you arrive late, you get less time!

What to bring

  • Yourself.
  • Your UW ID card.
  • A pen or pencil and eraser.
  • Water
  • A 1-page cheatsheet
    • Note: we will provide a reference sheet that includes some documentation that you won’t have to memorize or include on your own cheatsheet.
    • Note 2: This reference sheet may change between now and the exam date.

Where to sit

The room will be tight, and so we will have a seating chart, organized by section. This will be available 1-2 days before the exam.

Format

This is a hand-written test, meaning NO ELECTRONIC DEVICES of any kind allowed. Any math on the exam will be limited to simple arithmetic; we’re assessing for Python and programming, not for math!

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?
  • 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 …

Topics

Every topic up to the lecture before the midterm is fair game for appearing on the exam. The one caveat is Dictionaries, to be introduced the Monday before the exam: you will not be expected to be proficient in this topic, and thus it will be weighted appropriately.

The short list of topics are:

  • Variables, Statements, Expressions
  • For loops, range, nested loops
  • If statements and conditionals
  • Functions, function arguments, and return statements
  • Lists
  • File input/output (I/O)
  • Basic dictionaries

Practice

Warning

This quarter marks the first quarter in recent past that the course is doing in-person exams. As such, exams from past quarters are either completely different, or contain possibly outdated practices. When in doubt about whether a topic will be covered or if an answer key seems different than you expect, ask on Ed.

These past quarters’ midterms may be helpful in practice and studying:

Some notable differences (this list may be updated over time):

  • print statements are missing parentheses. They are now required.
  • Sets will not be on this quarter’s midterm.
  • itemgetter and tuples (things that look like (1, 2)) will not be on this quarter’s midterm.
  • These exams are slightly longer than what you should expect this quarter.