AP CSP - Practice MCQ Check 3/3/27
Categories: PersonalAP CSP - Practice MCQ Check 3/4/27
Topic performance, most-missed analysis, study strategy, and question-by-question corrections in one Tailwind post.
MCQ Topic Performance Chart
Visual performance by AP CSP topic
Most Missed Topics + Improvement Plan
Priority by lowest scoresHighest Priority (0%)
Plan format: what I will do + how I will do it consistently before the next MCQ.
- 3.1 Variables and Assignments: I will complete one trace-table drill per day (old value → operation → new value) and circle the exact assignment order before choosing an answer.
- 3.3 Mathematical Expressions: I will rewrite each expression in plain words first, then solve 5 short order-of-operations practice items daily and check each step, not just the final number.
- 3.5 Boolean Expressions: I will make a mini truth table for every AND/OR/NOT question, test at least two edge cases, and only submit after verifying which combinations evaluate to true.
- 3.6 Conditionals: I will translate each IF/ELSE branch into a one-line meaning and run two sample inputs per branch to confirm no path is skipped.
- 3.17 Algorithmic Efficiency: I will compare algorithms by counting operations explicitly (work per loop × number of loops) and write the count next to each choice before selecting.
Second Priority (Low Performance)
- 2.1 Binary Numbers (40%) + 3.12 Calling Procedures (40%): I will do a 10-minute daily binary conversion set (decimal↔binary + RGB examples) and trace one procedure call stack showing parameters, return value, and final output.
- 2.3, 3.7, 3.9, 3.15, 3.16 (50-57% range): I will complete one mixed practice problem per topic every two days, then label what the question asks for (total, rate, average, or condition) before solving.
Execution schedule: highest-priority topics first in each study session, then one second-priority mixed review set to build retention.
Question-Type Cheatsheet (what to do during MCQ)
- Boolean logic / logic gates: make a 2x2 mini truth table (TT, TF, FT, FF), evaluate each gate in order, then check the final output row that matches the answer choice.
- Conditionals and ranges: rewrite the condition as a number line (for example, target - 10 to target + 10), then test one value inside and one value outside the range.
- Variables, assignments, and loops: use a 3-column trace table (step, variable before, variable after) and do not skip iterations; most errors come from skipped updates.
- Procedure calls and return values: write input values next to parameters, compute inside the procedure once, and box the returned value before applying it to the caller.
- Algorithms and runtime comparison: count exact work (calls per loop × loop repetitions) for each option, then compare totals instead of relying on code appearance.
- Lists and duplicates: list intermediate results after each operation (append/remove/filter), then remove duplicates only when instructed and compare final lengths/contents.
- Binary, bits, and RGB: convert one component at a time, check with powers of two (1,2,4,8,16,32,64,128), and verify final decimal triplet before naming the color.
- Graphs (total vs average vs rate): first label what the prompt asks, then use graph shape to infer trend and only then compare specific values.
- Internet concepts (TCP/IP, IPv4/IPv6, metadata): match each term to its core role (rules/addressing/data-about-data) and eliminate options that describe a different concept.
- Simulation / probability: convert each random range into probability fractions, confirm all probabilities add to 1, then match those fractions to the scenario.
Strengthening My AP CSP MCQ Skills
What I need to do differently- Slow down on Boolean logic and test values with mini truth tables.
- Trace algorithms step by step using a variable-change table.
- Rewrite ranges in plain English before selecting an answer.
- Practice binary conversions daily and connect to powers of two.
- Explain list logic in one sentence instead of memorizing patterns.
- Read graph trends by shape first, then compare values.
- Review networking vocabulary (TCP/IP, IPv4 vs IPv6, metadata).
- Compare runtimes by operation counts, not guessing.
MCQ Wrap-Up Expectations and Plan
Pre-MCQ execution planWhat I need to study more
- Boolean logic and logic gates
- Algorithm tracing and loop flow
- Conditionals and range checks
- Binary, bits, and data representation
- Lists, duplicates, and formula setup
- Graph interpretation and rates
- Internet concepts
- Efficiency and runtime reasoning
How I will improve
- Create mini truth tables and test 2-3 cases.
- Trace variable old/new values for full loop runs.
- Do daily binary drills (conversions, RGB, bit capacity).
- Rewrite formulas in words before selecting.
- Compare graph shape first, then total vs average target.
- Use one-page internet vocabulary notes.
- Count operations explicitly for runtime comparisons.
During the next MCQ
- Annotate each prompt before selecting.
- Trace one concrete example for logic/algorithm questions.
- Use quick checkpoints for binary and ranges.
- Eliminate at least one wrong option with evidence.
- Finish with a full answer-choice verification check.
MCQ Corrections + Why I Was Wrong
Question-by-question reflection- Logic gates circuit: “For which input values does the circuit output true?” My choice: A | Correct: C. Why I was wrong: I only checked one branch quickly; with choice A, one input to the final AND is false, so the overall output is false.
- Robot in a grid (Programs I and II): “Which statement best describes correctness of both programs?” My choice: A | Correct: not A (Program II works). Why I was wrong: I assumed Program II failed without fully tracing all moves to the gray square.
- Flight simulation software: “Which is LEAST likely an advantage for pilot training?” My choice: B | Correct: C. Why I was wrong: I mixed up usefulness with realism; simulations are valuable but not more realistic than real flights.
- Science museum ticket algorithm: “Which code segment correctly displays ticket cost using age and includesTour?” My choice: C | Correct: B. Why I was wrong: I treated conditions as a single path, but age surcharge and tour surcharge can both apply independently.
- RGB color from binary triplet: “(11111111, 11111111, 11110000) is which color?” My choice: C | Correct: A (Ivory). Why I was wrong: I rushed the match; converting gives (255, 255, 240), which is Ivory.
- Binary triplet for indigo: “What is the binary RGB for (75, 0, 130)?” My choice: A | Correct: C. Why I was wrong: my decimal-to-binary conversion for 75 was off; 75 is 01001011.
- Display digits right-to-left algorithm: “What should missing step 3 be?” My choice: C | Correct: B. Why I was wrong: I didn’t preserve the proper update order; show remainder, then replace number with integer quotient.
- Program A vs Program B outputs: “How do displayed values compare?” My choice: D | Correct: not D. Why I was wrong: I guessed from structure instead of tracing; both programs display ten values.
- Cloud app registered-user growth graph: “Best description for years 1–8?” My choice: A | Correct: C. Why I was wrong: I generalized one trend; growth roughly doubles early, then becomes closer to constant-rate later.
- Average data stored per user graph: “Best description across years 1–8?” My choice: D | Correct: near constant average. Why I was wrong: I focused on rising totals, but similar graph shapes imply roughly stable per-user average.
- Spinner simulation: “Which code segment matches a spinner where Move 1 space is six times each other region?” My choice: C | Correct: different option. Why I was wrong: I didn’t validate all probabilities; intended model is 6/8 for move 1 and 1/8 each for the other outcomes.
- Image metadata (LEAST likely): “Which item is least likely metadata?” My choice: C | Correct: D. Why I was wrong: I treated all related file info as metadata, but a duplicate image copy is data, not metadata.
- Swap alpha and beta using temp: “Which code segments correctly interchange values?” My choice: A | Correct: B (I and III only). Why I was wrong: I missed that segment II overwrites one value too early, so both variables end up the same.
- Course grade drop-lowest (version set 1): “Which code calculates finalGrade correctly?” My choice: B | Correct: D. Why I was wrong: I used the wrong operation order; subtract minimum first, then divide by LENGTH(scores) - 1.
- Course grade drop-lowest (version set 2): “Same scoring question repeated.” My choice: B | Correct: D. Why I was wrong: same issue as above; division happened too early before removing the minimum score.
- DrawLine missing code: “Which replacement draws the target figure correctly?” My choice: C | Correct: A. Why I was wrong: I updated endY before drawing; correct sequence draws first, then decrements endY.
- IPv6 vs IPv4 benefit: “Best benefit of IPv6?” My choice: A | Correct: B. Why I was wrong: I chose a distractor; the core benefit is vastly larger address space.
- Within 10 points boolean expression: “Which expression is true iff score is within 10 of target?” My choice: A | Correct: D. Why I was wrong: I failed to write a two-sided bound: target - 10 ≤ score ≤ target + 10.
- Minimum bits for 100 staff members: “How many bits are required for unique IDs?” My choice: A | Correct: C (7 bits). Why I was wrong: I didn’t check powers of two carefully; 2^6 is 64, but 2^7 is 128.
- Reasonable-time algorithms: “I: 2n accesses, II: n^2 accesses, III: 10 accesses. Which are reasonable?” My choice: A | Correct: D. Why I was wrong: I eliminated quadratic too quickly; in AP CSP framing, all listed runtimes are considered reasonable.
- Bacteria simulation statements: “Which statements about loop behavior/output are true?” My choice: D | Correct: A (I only). Why I was wrong: I misread output meaning; it displays net change from start, not average-per-hour and not just final population.
- GetPrediction execution time: “How do Version I and II runtimes compare?” My choice: C | Correct: D. Why I was wrong: I compared visually instead of counting calls; Version I makes 4 calls, Version II makes 9.
- Purpose of TCP/IP: “What do these protocols do?” My choice: B | Correct: C. Why I was wrong: I confused standards with security; TCP/IP establishes common communication rules between devices.
- Count distinct values appearing in both lists: “Which code correctly assigns count?” My choice: B | Correct: D. Why I was wrong: I didn’t remove duplicates at all required stages before length comparison.
- Perfect numbers program (remove two lines): “Which two lines must be removed?” My removals: line 5 and line 9 | Correct: line 5 and line 9. Why this works: line 5 incorrectly increments count every loop, and line 9 can skip values by extra incrementing.
Quick pattern for next time
- Translate prompts into tiny test cases first.
- Verify all conditional combinations and edge values.
- Track loop variables each iteration to avoid skips/infinite loops.
- Convert binary/decimal one component at a time.
- Check operation counts for algorithm comparisons.