Kyla Mcmullen
Notes
1- The file is chapter after chapter.
2- We have shown you few pages sample.
3- The file contains all Appendix and Excel
sheet if it exists.
4- We have all what you need, we make
update at every time. There are many new
editions waiting you.
5- If you think you purchased the wrong file
You can contact us at every time, we can
replace it with true one.
Our email:
,Name: Class: Date:
Module 01: Computational Thinking
1. Which term refers to a series of steps for solving a problem or carrying out a task?
a. pattern
b. algorithm
c. decomposition
d. level of abstraction
ANSWER: b
FEEDBACK: a. Incorrect. A pattern is a similarity found in a procedure or task.
b. Correct. Within a good algorithm, the specific series of steps or rules can be
followed to successfully complete a requested task.
c. Incorrect. Decomposition divides a complex problem or task into manageable
units.
d. Incorrect. The term level of abstraction relates to the amount of detail that is
hidden.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.1 - Define the term “algorithm” as a series of steps for solving
a problem or carrying out a task.
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
2. Programming algorithms specify the underlying logic for the statements in a computer program.
a. True
b. False
ANSWER: True
FEEDBACK: Correct Programming algorithms describe the orderly steps that need to be completed by
a computer program to accomplish a task. Without a solid, well-written computer
algorithm to follow, the computer program may not function correctly when
solving the intended task.
Incorrect Computer programmers use programming algorithms as blueprints to guide them
when writing their computer programs in languages such as C++. The
programming algorithm is the foundation for the computer program, which will
eventually be converted to machine-readable code executed by the computer
software to accomplish a desired task. The ability of a computer program to
successfully complete a task is often directly related to the soundness of the
corresponding programming algorithm.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.1 Algorithms
QUESTION TYPE: True / False
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.2 - State that algorithms are the underlying logic for computer
Copyright Cengage Learning. Powered by Cognero. Page 1
,Name: Class: Date:
Module 01: Computational Thinking
programs.
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
3. Which statement best describes a computer program?
a. It is a set of instructions that performs a specific task when executed by a digital device.
b. It is a set of instructions executed in an application that specify the attributes for a classification of objects.
c. It is a series of patterns that serve as the blueprints for a programming algorithm.
d. It is a set of steps that specifies the underlying logic and structure for a classification pattern executed in an
application.
ANSWER: a
FEEDBACK: a. Correct. A programming algorithm is a set of steps that specifies the underlying
logic and structure for the statements in a computer program. The computer
program is then translated into a machine-readable language the computer
device can understand and executed to successfully complete a specific task.
b. Incorrect. Instructions are executed by a digital device, not an application.
c. Incorrect. Programming algorithms serve as the blueprints for computer
programs.
d. Incorrect. A classification pattern is a concept used in program design, not a
series of steps that can be executed in an application.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.3 - Define the term "computer program."
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
4. Which example leads to an algorithm design used for an everyday technology application?
a. The steps for changing a tire
b. A recipe for baking brownies
c. Making a frozen pizza in a toaster oven
d. The payment process at an online store
ANSWER: d
FEEDBACK: a. Incorrect. Changing a tire is not a technology application.
b. Incorrect. Baking brownies is not a technology application.
c. Incorrect. Making a frozen pizza in a toaster oven is not a technology
application.
d. Correct. The payment process at an online store requires network and software
technology that are used to access the online store and to purchase the
desired product. An algorithm for the technological purchase will document how
payment and shipping information are provided and stored, as well as how the
Copyright Cengage Learning. Powered by Cognero. Page 2
,Name: Class: Date:
Module 01: Computational Thinking
technological application ultimately completes the sale online.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.4 - Provide examples of algorithms used in everyday
technology applications.
KEYWORDS: Bloom’s: Understand
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
5. There can be more than one programming algorithm for solving a problem or performing a task.
a. True
b. False
ANSWER: True
FEEDBACK: Correct Multiple and different algorithms may exist to solve a problem or perform a task.
A key difference between the algorithms to consider is efficiency, as some
algorithms are more efficient than others. Efficiency may be may also be
measured in different ways from execution speed to memory utilization.
Incorrect The same task can be completed in different ways using different steps to reach
the same result. The steps taken to complete the same task can differ widely in
specific action, length, or efficiency. However, the result of each algorithm solves
the problem.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.1 Algorithms
QUESTION TYPE: True / False
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.5 - Confirm that there can be more than one algorithm for a
task or problem and that some algorithms may be more efficient than others.
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
6. Why are computer scientists interested in algorithm efficiency?
a. Because efficient algorithms always produce more secure computer programs.
b. Because efficient algorithms always produce a programming blueprint that can easily be applied to any
programming language.
c. Because efficient algorithms always produce a computer program that uses the least amount of code.
d. Because efficient algorithms tend to produce computer programs that in turn operate efficiently, quickly, and
reliably.
ANSWER: d
FEEDBACK: a. Incorrect. The security of a computer program is not defined by or directly
related to the efficiency of the algorithm.
Copyright Cengage Learning. Powered by Cognero. Page 3
,Name: Class: Date:
Module 01: Computational Thinking
b. Incorrect. In general, an algorithm should be applicable to various programming
languages. However, some programming languages may be able to utilize the
algorithm easier and more efficiently than another.
c. Incorrect. Efficient algorithms tend to produce computer programs that operates
efficiently, quickly, and reliably. The number of line of code needed to meet
these criteria is not always considered.
d. Correct. Computer scientists are interested in designing what they call “good”
algorithms that lead to efficiency, speed, and reliability in programs. Good
algorithms have characteristics related to five areas. First, input values apply to
a set of specified inputs. Second, the algorithm produces one or more outputs.
Third, the algorithm terminates after a finite number of steps. Fourth, each step
of the algorithm is clear and unambiguous. Fifth, the algorithm successfully
produces the correct output.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.6 - Explain why computer scientists are interested in algorithm
efficiency.
KEYWORDS: Bloom’s: Analyze
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
7. What characteristic best applies to an effective algorithm?
a. The algorithm applies to one specific input.
b. The algorithm will terminate only when the user wants it to terminate.
c. The algorithm produces at most one output.
d. The algorithm produces one or more outputs.
ANSWER: d
FEEDBACK: a. Incorrect. An effective algorithm design should apply to a set of specific inputs.
b. Incorrect. An effective algorithm design should ensure a resulting program
terminates after a finite amount of steps.
c. Incorrect. An effective algorithm design should produce one or more outputs.
d. Correct. Computer scientists like algorithms designed with five main qualities
that produce a computer program that will operate efficiently, quickly, and
reliably. These five qualities focus on characteristics for inputs, outputs,
finiteness, precision, and effectiveness.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.7 - List the characteristics of an effective algorithm.
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
Copyright Cengage Learning. Powered by Cognero. Page 4
,Name: Class: Date:
Module 01: Computational Thinking
DATE MODIFIED: 1/11/2021 7:32 AM
8. A programmer usually has multiple alternative choices for writing an algorithm for an everyday technology task.
a. True
b. False
ANSWER: True
FEEDBACK: Correct An alternate algorithm for an everyday technology task requires the use of one of
the three conventional ways a programmer can come up with an algorithm: using
a standard algorithm, performing a task manually and documenting the steps,
and, finally, applying computational thinking techniques. By using one of these
techniques, the programmer will most likely create a successful algorithm for an
everyday technology task.
Incorrect Before coding, programmers consider various algorithms that might apply to a
problem. First, the programmer can use a standard algorithm. Second, he or she
can perform the task manually, stepping through the process, recording those
steps, and then analyzing their effectiveness. Third, a programmer can apply
computational thinking techniques. For an everyday technology task, one or
more of these algorithm choices may be available and useful.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
QUESTION TYPE: True / False
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.8 - Write a list of steps (an algorithm) for accomplishing a
simple, everyday technology application.
KEYWORDS: Bloom’s: Apply
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
9. One way a programmer can come up with an algorithm for accomplishing a simple, everyday technology application by
using a standard algorithm.
a. True
b. False
ANSWER: True
FEEDBACK: Correct A programmer can come up with an algorithm in three ways: using a standard
algorithm, performing a task manually and documenting the steps, and, finally,
applying computational thinking techniques. For a simple, everyday technology
application any of these three techniques might work.
Incorrect Before coding, programmers consider various algorithms that might apply to a
problem. First, the programmer can use a standard algorithm. Second, he or she
can perform the task manually, stepping through the process, recording those
steps, and then analyzing their effectiveness. Third, a programmer can apply
computational thinking techniques. For a simple, everyday technology
application, a standard algorithm technique might exist.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
Copyright Cengage Learning. Powered by Cognero. Page 5
,Name: Class: Date:
Module 01: Computational Thinking
QUESTION TYPE: True / False
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.9 - Write an alternate algorithm for the everyday technology
task.
KEYWORDS: Bloom’s: Apply
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
10. What concept refers to a set of techniques designed to formulate problems and their solutions so that a programmer
can select efficient algorithms?
a. algorithm termination closure
b. standard algorithm processing
c. computational thinking
d. hierarchical modeling
ANSWER: c
FEEDBACK: a. Incorrect. The concept of algorithm termination closure does not exist.
b. Incorrect. The concept of standard algorithm processing does not exist.
c. Correct. Computational thinking is a set of techniques designed to formulate
problems and their solutions. A programmer can use computational thinking
techniques such as decomposition, pattern identification, and abstraction to
analyze an algorithm’s design efficiency. With this analysis, a programmer may
then use the most efficient algorithm to serve as a blueprint for an efficient
computer program
d. Incorrect. The concept of hierarchical modeling does not exist.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.1 Algorithms
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.1.10 - Select the more efficient of the two algorithms you have
written.
KEYWORDS: Bloom’s: Apply
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
11. What term refers to the process of dividing an extensive app into smaller parts?
a. abstraction
b. decomposition
c. computational thinking
d. pattern identification
ANSWER: b
FEEDBACK: a. Incorrect. Abstraction refers to hiding data.
b. Correct. It is usually easier to deal with several smaller components instead of
one large, complex application. Decomposition is the process that helps create
Copyright Cengage Learning. Powered by Cognero. Page 6
,Name: Class: Date:
Module 01: Computational Thinking
the smaller, more manageable pieces of the app.
c. Incorrect. Computational thinking is a set of techniques designed to formulate
problems and their solutions.
d. Incorrect. Pattern identification refers to the process of finding similarities in
procedures and tasks.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.2 Decomposition
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.2.1 - Define the term "decomposition" as a technique for dividing
a complex problem or solution into smaller parts.
KEYWORDS: Bloom’s: Remember
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
12. Why is decomposition an important tool for computer scientists?
a. It creates algorithm designs with a flat layout, leading to programs that are more efficient.
b. It creates algorithm designs with a high level of abstraction, leading to programs that are more efficient.
c. It creates algorithm designs with a low level of abstraction, leading to programs that are more efficient.
d. It creates algorithm designs with more manageable pieces, leading to programs that are more efficient and
maintainable.
ANSWER: d
FEEDBACK: a. Incorrect. Algorithm designs are not characterized by layout.
b. Incorrect. Algorithm designs are not characterized by abstraction.
c. Incorrect. Algorithm designs are not characterized by abstraction.
d. Correct. The decomposition process creates smaller, more manageable
modules. These in turn are easier to work with when compared to the original
large, complex application. Efficiencies are gained by working with smaller,
manageable pieces.
POINTS: 1
DIFFICULTY: Medium
REFERENCES: 1.2 Decomposition
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.2.2 - Explain why decomposition is an import tool for computer
scientists.
KEYWORDS: Bloom’s: Analyze
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
13. A programmer uses decomposition when devising an algorithm for a complex problem or task.
a. True
b. False
Copyright Cengage Learning. Powered by Cognero. Page 7
, Name: Class: Date:
Module 01: Computational Thinking
ANSWER: True
FEEDBACK: Correct Decomposition is a process that creates a set of smaller tasks from a larger
application. An algorithm is a series of steps for solving a problem or carrying out
a task. An algorithm is created for each of the tasks that results from the
decomposition process.
Incorrect The concepts of an algorithm and decomposition are different. An algorithm is a
series of steps for solving a problem or carrying out a task. Decomposition, on
the other hand, is the process of breaking a larger, complex app into smaller
tasks. A programmer can create smaller algorithms for each of smaller modules
identified in the decomposition process.
POINTS: 1
DIFFICULTY: Easy
REFERENCES: 1.2 Decomposition
QUESTION TYPE: True / False
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.2.3 - Differentiate the concepts of algorithms and decomposition.
KEYWORDS: Bloom’s: Analyze
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
14. Which phrase describes an example of structural decomposition?
a. using algorithmic pattern recognition to identify possible variables
b. dividing a mobile banking app into hierarchical structural units
c. breaking down a two-factor authentication module into smaller actions, processes, or steps
d. looking for two-factor authentication logical and physical objects that a computer program will manipulate
ANSWER: b
FEEDBACK: a. Incorrect. This response is not part of any type of decomposition.
b. Correct. Yes—for structural decomposition, we must consider dividing a mobile
banking app into hierarchical structural units.
c. Incorrect. This response refers to functional decomposition.
d. Incorrect. This response refers to object-oriented decomposition.
POINTS: 1
DIFFICULTY: Difficult
REFERENCES: 1.2 Decomposition
QUESTION TYPE: Multiple Choice
HAS VARIABLES: False
LEARNING OBJECTIVES: PC++.PARS.21.1.2.4 - Identify examples of structural decomposition.
KEYWORDS: Bloom’s: Understand
DATE CREATED: 1/11/2021 7:32 AM
DATE MODIFIED: 1/11/2021 7:32 AM
15. Which phase describes an example of functional decomposition?
a. using algorithmic pattern recognition to identify possible variables
b. dividing a mobile banking app into structural units
Copyright Cengage Learning. Powered by Cognero. Page 8