Session 23 Preparation — Videos, Reading and Quizzes

Quiz

There is no quiz associated with this Preparation.

However, there ARE paper and pencil problems to complete before you take Test 3. See Practice Problems for the Paper-and-Pencil part below.

Videos and Reading:

There is a HELP SESSION for Test 3 in Olin 269 on Tuesday, October 27, from 7 p.m. to 11 p.m.

Test 3 follows the same format as Tests 1 and 2: paper-and-pencil problems followed by on-the-computer problems.

Paper and pencil problems:

The only external resource allowed is a single sheet of 8.5 x 11 paper, but (as in Test 2) you may use BOTH sides of the sheet. (Or have 2 sheets, each using only one side.) This sheet(s) may be typed or handwritten. You will gain the most benefit from it if you make it yourself instead of obtaining one from another source.

See the Practice Problems for the paper-and-pencil portion of Test 3 for examples of each of the following problem-types.

  • Here is the same document as a PDF.
  • Here is a SOLUTION; you are on your honor NOT to look at this solution until you have completed (or at least attempted) the problems themselves.

For the paper and pencil questions, you should be prepared for problems like the following:

  1. A problem in which you demonstrate that you understand:
    • What mutation is.
    • Which of the sequences that we have studied are mutable (answer: lists) and which are immutable (answer: strings and tuples).
    • Why having sequences that are mutable is valuable.
    • Why having sequences that are mutable is, in some sense, dangerous.
  2. A problem in which you demonstrate that you understand:
    • What an exception is.
    • When is an exception raised?
    • What happens when an exception is raised.
    • How write a simple try/except expression to handle exceptions.
    • When to use a try/except expression, and why.
  3. Problems in which you demonstrate that you can trace by hand loops-within-loops that involve printing and/or sequences of sequences.
  4. Problems in which you demonstrate that you can implement (WITHOUT a computer) problems that require simple loops-within-loops to print patterns on the console.

On-the-computer problems:

As for Test 2, you may use anything on your computer, including your projects, plus any written materials you bring to the test, plus anything directly reachable from the CSSE 120 course web site. You may NOT use any search engine (like Google).

For the on-the-computer problems, you should be prepared for problems like those in the following list. Also, you should be prepared to write TESTS for any of the following. Of course, in solving problems like the following you will have to draw upon concepts that appeared on Tests 1 and 2 as well.

  1. Problems that require loops-within-loops to print patterns on the console, draw two-dimensional patterns on an rg.RoseWindow, and/or loop through and process sequences within sequences.
  2. Problems in which you mutate a sequence passed as an argument to a function and/or return a new sequence based upon a sequence passed as an argument to a function. Problems in which you TEST whether an argument was correctly (or incorrectly) mutated.
  3. Problems that require the program to prompt for and input strings, integers and/or floating-point numbers from the Console.
  4. Problems that require the program to read from a text file and process the data read. Problems that require writing processed data to a text file.
  5. Doing simple exception-handling (with try/except) on problems that input from the Console and/or do file input/output.