Final Exam
Friday, August 16
12:15-03:15PM PDT
Hewlett 200



Scores and Graded Exams

How do I find out my score? Like for the midterm, the scores have been released on Gradescope. Log in to Gradescope to see your score.

The statistics of the exam scores (out of 106) were as follows:

Mean: 73.54

Median: 78.0

Standard Deviation: 19.57

Regrade Policy

We work hard to grade consistently and correctly, but sometimes we make mistakes in grading. If you believe part of your exam was incorrectly graded, type your code into Qt Creator and test it out. This is the easiest way to see if your code works or not. If you still think we have made a mistake, review the posted final exam solutions. If you still think we have made a mistake, submit a regrade request through gradescope before Friday 8/23 at midnight. Your regrade request must specifically state which part of the criteria we made a mistake on. Regrade requests of the form, "I deserve more points for this question." will not be reviewed.

Practice Materials

Practice Final Exam Exam Code: battleship | Reference Sheet | Solution

The sample final exam posted here is intended to be similar to the actual final. The number of problems and type of problems on the actual exam will be relatively similar to what is seen on these practice exams, though we do not promise that it will be exactly the same in length or in difficulty.

Remember to save your answers separately from BlueBook so that you can refer back to them later.

Section Handouts, CodeStepByStep, and lecture practice problems are also great ways to practice relevant material.


The logistics for the final exam are the same as for the midterm exam; please see the midterm logistics section for more information.

Material Covered

While the final is cumulative (it draws from material throughout the quarter), it focuses more on material taught since the time of the midterm, including the following concepts listed below. Programming is inherently cumulative in that new topics build upon old ones. So you may be asked to solve problems that involve past topics such as ADTs, recursion, big-Oh, and so on. Note that you may be asked to read code (look at a piece of existing code and answer questions about it, such as writing its output or drawing its state in memory) and/or write code (write a piece of code such as a method or short program that solves a given problem).

Keep in mind that you are still responsible for material covered on and after lecture 23. But since you did not do an assignment on these topics, it will not be the focus of a major code-writing question. You may be asked to write snippets of code, or other conceptual questions related to these topics.

Exam Strategies

The recommended exam strategies for the final exam are the same as for the midterm; please see the midterm exam strategies section for more information.

Written by Nick Troccoli.