AP CSA 2.9 Exercise 2: Implementing Selection and Iteration Algorithms Applied Practice

Unit 2: Selection and Iteration · Lesson 2.9 · Exercise 2

Implementing Selection and Iteration Algorithms: Applied Practice

Six scenarios on the standard accumulate-and-decide algorithms, and where the accumulator has to live.

How this one is different

The exercise-1 editor asks you to implement these. These six ask what breaks when a variable is declared one level too deep or seeded with the wrong constant.

Applied Practice

6 questions · scenario driven · every answer is recorded for your teacher

Question 1 of 6Analyze
A counting loop declares int count = 0; INSIDE the loop body.
What does it report?
Incorrect. A total requires the variable to survive the iteration.
Correct. Correct: it can be incremented once within a pass but never carries forward.
Incorrect. It reaches 1 whenever a match occurs on the final pass.
Incorrect. Declaring inside a loop is legal.
Question 2 of 6Apply
A loop must report the smallest value in a list of temperatures that can be below zero.
How should the running minimum be seeded?
Correct. Correct, and it requires the list to be non-empty, which is a check worth making explicit.
Incorrect. Same defect as 0, shifted by one.
Incorrect. A count is not a temperature.
Incorrect. Any all-positive list then wrongly reports 0.
Question 3 of 6Analyze
A loop computes a running average by dividing the sum by the count INSIDE the loop.
What is the effect?
Incorrect. Division does not affect the loop bound.
Incorrect. Dividing into a separate variable leaves the sum untouched.
Incorrect. The last computed value is the correct overall average.
Correct. Correct, assuming the division result is not fed back into the sum. It is wasteful rather than wrong.
Question 4 of 6Apply
A method must count values that satisfy a condition AND report their total.
How many passes over the data are needed?
Incorrect. Two results do not require three passes.
Incorrect. A second pass repeats work already available in the first.
Correct. Correct. Independent accumulators share a traversal freely.
Incorrect. The pass count does not depend on how many match.
Question 5 of 6Evaluate
A loop sets a boolean flag when it finds a match, then checks the flag after the loop.
When is that preferable to returning immediately?
Incorrect. For a pure existence check, an immediate return is simpler and stops early.
Correct. Correct. The flag earns its place when the traversal must complete anyway.
Incorrect. Returning early cannot finish work the method still owes.
Incorrect. Ordering is irrelevant to the choice.
Question 6 of 6Apply
A method must return the index of the first match, or -1 when nothing matches.
Where does the -1 belong?
Correct. Correct. Loop completion is itself the proof that nothing matched.
Incorrect. Returning before the loop means it never runs.
Incorrect. Without it the method has no value to return on the no-match path and will not compile.
Incorrect. An else inside the loop returns -1 on the very first non-match, ending the search prematurely.

Where to go next

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

[email protected]

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at [email protected]