No exam information has been posted yet. There will be an announcement on the main course web page when exam information is posted.
The system for final exam regrades is the same as on the midterm. If you disagree with the grading of a programming problem, such as if you think your solution actually does work, or that your solution is more nearly correct than it was given credit for, you must download our Qt Creator code project, which will contain runnable testers for the exam problems. Type your code into the project .cpp file, fixing any trivial syntax problems. Run it for yourself and see how nearly correct your solution is.
If after running the code files you still think your grade is incorrect, submit your exam to the instructor for a regrade. (Slide it under his office door.) You must include a cover page with a brief written explanation of what specifically you think was misgraded and why. You must also email your problemXX.cpp for the relevant problem(s) to the instructor so that we can compile and run your code to verify your claim. As part of your cover page, include copy/pasted output from the the test case results, so that we can to verify its correctness.
We will not accept any exam for a regrade unless it includes this cover page, and we will not re-evaluate grading of the correctess of any programming questions without a typed copy of your solution from the .ZIP / .cpp file being shown to us first.
Also note: When you submit an exam for a regrade, we will regrade your entire exam. If we notice anywhere that you were mistakenly given too many points, we will also correct this. So it is possible that a regrade request will result in you receiving a lower mark than what you started with.
All final exam regrade requests (other than simple score addition errors) must be submitted to the instructor within 7 days of the start of the following quarter.
Same as on the midterm exam (see rules below).
If you want more practice problems, here are links to some past exams given in 106B by other instructors. They don't exactly match the current exam format, so they may be of limited use. Some of the problems on these tests don't match the topics, difficulty level, and/or type of questions we currently plan to ask. These links are provided merely as a convenience to help you study.
The actual exam will have roughly 10 total problems. Those problems will be selected from the following categories. For each category, you may be asked to read code (look at a piece of existing code and answer questions about it, such as writing its output), and/or write code (write a piece of code such as a function or short program that solves a problem about that topic).
LinkedList class from lecture or a similar linked list class
BinaryTree class from lecture or a similar binary tree class
HeapPriorityQueue or ArrayList
GWindow class
= operator, copy constructors, and deep copying
Stats:
| pts | % | |
|---|---|---|
| MEDIAN | 92.0 | 80.0% |
| MEAN | 88.2 | 76.7% |
| STDEV | 19.0 | 16.5% |
| percentage | # | % of class |
|---|---|---|
| 90-100% | 87 | 24% |
| 80-89% | 95 | 26% |
| 70-79% | 68 | 19% |
| 60-69% | 50 | 14% |
| 0-59% | 64 | 17% |
Picking up your exam: You can pick up your exam from the filing cabinets on the first floor of the Gates building. Go to the filing cabinet labeled "CS 106B". If you have questions about exactly what points you missed and why, please pick up your exam and look it over, then contact the head TA and instructor if you still have any questions.
Curve?: In general, we feel satisfied that the scores are high enough. We feel satisfied that the scores are high enough, so there is no curve.
Low Grades: Another topic some students ask about is: If their score was lower than they hoped, how much effect will that have on their grade, or what are their options, etc.? Most of the information to answer this can be found on this web site. The course info sheet lists the relative grading weight of homework vs. midterm vs. final exam, so you can use that to compute the rough effect on your grade of a particular midterm score. Also look at our FAQ page for info about pass/fail grading options, drop dates, and other information.
We work hard to grade consistently and correctly, but sometimes we make mistakes in grading. If you disagree with the grading of your exam, such as if you think your solution actually does work, or that your solution is more nearly correct than it was given credit for, the procedure for regrades is the following:
If your complaint is about the correctness of your solution to a programming question, you must download our Qt Creator code project, which will contain runnable testers for the midterm problems. Type your code into the project .cpp file, fixing any trivial syntax problems. Run it for yourself and see how nearly correct your solution is.
If after running the code files you still think your grade is incorrect, submit your exam to the instructor for a regrade. (Either give it to us in lecture, go to our office hours, or slide it under our office doors.) You must include a cover page with a brief written explanation of what specifically you think was misgraded and why. You must also email your midterm "main" .cpp file to the instructor so that we can compile and run your code to verify your claim. As part of your cover page, include copy/pasted output from the the test case results, so that we can to verify its correctness.
We will not accept any exam for a regrade unless it includes this cover page, and we will not re-evaluate grading of the correctess of any programming questions without a typed copy of your solution from the .ZIP / .cpp file being shown to us first.
Also note: When you submit an exam for a regrade, we will regrade your entire exam. If we notice anywhere that you were mistakenly given too many points, we will also correct this. So it is possible (though less likely) that a regrade request will result in you receiving a lower mark than what you started with.
All midterm regrade requests (other than simple score addition errors) must be submitted to the instructor no later than Friday, Nov 21, at 5:00pm.
If you want more practice problems, here are links to some past exams given in 106B by other instructors. They don't exactly match the current exam format, so they may be of limited use. Some of the problems on these tests don't match the topics, difficulty level, and/or type of questions we currently plan to ask. These links are provided merely as a convenience to help you study.
#include statements in your exam code.
The actual midterm exam will have roughly 8-10 total problems. Those problems will be selected from the following categories. For each category, you may be asked to read code (look at a piece of existing code and answer questions about it, such as writing its output), and/or write code (write a piece of code such as a function or short program that solves a problem about that topic).
Vector, Grid, Stack, Queue, Set, Map, HashSet, HashMap, or Lexicon; understanding tradeoffs between various data structures
LinkedList class from lecture
const, constructors, operator overloading
iomanip library (e.g. setw, setprecision)
istringstream, ostringstream)
GWindow class
= operator, copy constructors, and deep copying
Here is a handout created by a past CS 106B instructor with her advice about how to study for, and take, a CS 106B exam. Note that not all of the information and policies in this handout are correct for the current quarter; for example, in Julie's quarter the exam was open-notes, but the exam this quarter is not.