Unit 2: Selection and Iteration
CS A · Unit 2 · Paper 1

Selection and Iteration unit test

A test on this unit alone, marked as a percentage and a letter grade — for the test your class is actually sitting, rather than for May. Answer everything, then submit once: seeing the answer to question 3 before attempting question 4 makes the final percentage meaningless.

Each paper is built from this unit’s 53 terms and is the same for everyone, so a teacher can assign “Unit 2, Paper 1” and every student sits the identical test. Multiple choice is marked objectively; the written sections you mark yourself against the model answer and rubric.
Suggested time 33 min 30 points0/17 attempted
1

if statement

2

Relational operators

3

Recursive method with an accumulating return

4

De Morgan's laws

5

Loop invariant thinking

6

else if chain

7

Accumulator pattern

8

Standard algorithm: sum and average

9

StackOverflowError

10

Conditional (ternary) operator

11

Standard algorithm: determine if all elements meet a condition

12

Compound boolean in a loop condition

Short answer 1. Define or explain: Empty loop body danger

3 pts

Short answer 2. Define or explain: for loop

3 pts

Short answer 3. Define or explain: Tracing a loop

3 pts

Short answer 4. Define or explain: Binary search

3 pts

Free response

6 pts

This course has no free-response prompt tagged to this unit, so one from elsewhere in the course is used. It is still worth writing — the skill transfers.

A 2D int array grid represents daily rainfall readings; each row is one week and each column is one day. Write two static methods. (a) public static int rowTotal(int[][] grid, int row) — returns the sum of the values in the given row. (b) public static int driestWeek(int[][] grid) — returns the index of the row with the smallest total. If two rows tie, return the lower index. Assume grid has at least one row and that all rows have the same length. Method (b) should call method (a).