About the final examination. 1. The exam will be similar to the quizzes we have had in the course. There will be no programming problems, i.e. where you need to write full programs or functions. However, there will be fill in the blanks questions in which you may have to fill in small parts of the code (at most 2-3 words). In addition there will be questions requiring understanding how a program executes (e.g. how many iterations happen, what is the value of a variable at a certain point, what does a program print). And there will be some multiple choice questions. There will also be some multiple select questions, which are like multiple choice but multiple alternatives are true. 2. While filling the blanks or otherwise giving answers, do not use unnecessary spaces, commas, quotation marks or newline characters. * For example, if you want to state the product of a and b, write a*b, do not write it as a * b. * Put quotes only where needed, e.g. Suppose friend is a map from strings to strings. Then if you want to know the friend of Amitabh, then you will need to write friend["Amitabh"]. So in this you should put quotes. On the other hand, if you are asked what will be printed (or what is the value of some variable), state that without using quotes, unless you feel the quotes will be printed (or the value includes quotes). * Do not parenthesize expressions unnecessarily. We may accept parentheses if you are unsure about operator precedence, but in general try to not use them. * For questions that ask what is printed, ignore newlines (endl) printed by the program. Include spaces only if you think the program will print spaces. 3. Simplify the answer by substituting the values of the variables if you know them, i.e. if n=5, then do not write n-1, instead write 4. Usually the answers will be integers. If the answers are real numbers, then write as a decimal fraction if the the fraction correct to 2 digits. 4. Assume that every piece of code or fragment is preceded by #include #include #include #include #include using namespace std; Also assume that other standard files will be included as needed. 5. If an algebraic expression is asked for, use C++ syntax, i.e. write P*V/(n*R*T) and not PV/nRT. 6. Regarding the standard library, you should know the important features, e.g. member functions count, size. You should also know how to declare maps of maps etc. and how to use them. Please go over what we discussed in the lectures. We will try to limit the questions to this because we realize that it becomes difficult to answer completely new questions in the exam setting. 7. Finally, if you think a question is incorrect or ambiguous, please give the best possible answer you can think of.