Analysis
Questions
Q14
There were 2 different programs. I chose D, but the right answer was C.
This is because the programs each display ten values, but each value displayed by program B is one greater than the corresponding value from program A.
- Program A displays:
1 2 3 4 5 6 7 8 9 10
- Program B displays:
2 3 4 5 6 7 8 9 10 11
.
Q23
“The following figures represent different ways of configuring a network of physically linked computers labeled P, Q, R, and S. A line between two computers indicates that the computers can communicate directly with each other. In which configuration is it NOT possible to have redundant routing between computers P and S?”
I chose C, but the right answer was B.
This is because redundant routing is impossible if there is only one possible path from one device to another.
- There is only one possible path from P to S:
P → R → Q → S
.
Q28
“A text-editing application uses binary sequences to represent each of 200 different characters. What is the minimum number of bits needed to assign a unique bit sequence to each of the possible characters?”
I chose A, but the correct answer is D.
This is because using 8 bits will allow for up to 256 characters (2^8 = 256
).
Q30
“Which of the following best approximates the amount of time it takes the program to execute?”
I chose A, but the right answer was D.
This is because each call to the Analysis
procedure requires one hour of program execution time.
- The procedure is called once before the loop, and then four times inside the loop (once for each of the four entries in
OneWordGenreList
). - Therefore, the program will take approximately 5 hours to execute.
Q43
“Based on the values in the table, which of the following best characterizes the algorithm for very large values of n?”
I chose B, but the right answer is A.
This is because the pattern in the table indicates there are n^2
steps for a list containing n
items.
- This number of steps is a polynomial, and the algorithm runs in reasonable time.
Q47
“In public key cryptography, the sender uses the recipient’s public key to encrypt a message. Which of the following is needed to decrypt the message?”
I chose C, but the right answer is D.
This is because in public key cryptography, a message is encrypted with a recipient’s public key and decrypted with the recipient’s private key.
Q50
“The procedure below searches for the value target
in list
. It returns true
if target
is found and returns false
otherwise. Which of the following are true statements about the procedure?”
I chose A, but the right answer is B.
This is because the procedure implements a linear search, which sequentially compares each element of the list with the target value.
- The list does not need to be sorted because the procedure checks list elements until either the target is found or it reaches the end of the list.
Q54
“A programmer notices the following two procedures in a library. The procedures do similar, but not identical, things:
- Procedure
Square(n)
returns the valuen^2
. - Procedure
Cube(n)
returns the valuen^3
.
Which of the following procedures is a generalization of the procedures described above?”
I chose C, but the right answer is D.
This is because the procedures Square
and Cube
are used to determine a power of n
.
- A generalization of this is
Power(n, m)
, which calculatesn^m
.
Q55
“A student wrote the procedure below, which is intended to ask whether a user wants to keep playing a game. The procedure does not work as intended.
Which of the following best describes the result of running the procedure?”
I chose A, but the correct answer is D.
This is because the expression ((response == "y") AND (response == "yes"))
always evaluates to false
because a variable cannot simultaneously be equal to both "y"
and "yes"
.
- Therefore, the procedure will always return
false
.
Q58
“Which of the following are true statements about how the Internet enables crowdsourcing?”
I chose C, but the correct answer is A.
This is because the Internet provides tools, information, and knowledge to crowdsourcing participants and lowers geographic barriers.
- However, some problems cannot be solved in reasonable time, even with a distributed approach.
Q60
“Which of the following are ways in which a programmer can use abstraction to manage the complexity of a program?”
I chose A and B, but the right answers are A and D.
This is because creating a list of names is an example of data abstraction, which helps programmers manage complexity.
Summary
The primary errors stem from incorrect assumptions, failure to recognize patterns, and misinterpretation of technical concepts. Correct answers consistently demonstrated the importance of careful attention to detail, recognizing logical structures, and understanding fundamental principles. Improved focus on these areas will enhance problem-solving skills and accuracy in future assessments.
Skills To Work On
- Skill 1.D: Design and evaluate computational solutions for a purpose.
- Skill 3.C: Develop programs that incorporate abstractions.
- Skill 4.B: Evaluate and test algorithms and programs.
- Skill 5.E: Investigate computing innovations.
I need to work on carefully analyzing patterns, relationships, and problem requirements, as many of my mistakes came from overlooking specific details or misinterpreting key concepts like routing paths, bit calculations, or algorithm complexity. To improve, I’ll focus on breaking down problems systematically and reviewing the logic behind my answers to avoid assumptions.