Coding and Gaming Study GuideVersión en línea Written questions for the test study guide. por Nicholas Schweizer 1 This lesson introduced the notion of "efficiency" in programming, and that it might mean different things at different times. Think of an example outside of computer science in which you have heard the term "efficiency" and compare it to the ways we talked about efficiency in programming. In what ways is the meaning of "efficiency" the same? In what ways is it different? Written answer 2 In your own words explain at least one reason why programming languages have functions. Written answer 3 In the Create Performance Task you will be asked to identify an abstraction in your program and explain how it helps manage the complexity of the program. Functions are a form of abstraction. Pick a function you wrote in your solution to the 3x3 square problem and explain how it helps manage the complexity of your program. Written answer 4 Free Response: It is said that functions with parameters generalize the behavior of a more specific command. Explain what this sentence means to you using the difference between turnLeft() and turnLeft(angle). Written answer 5 Free Response: “Abstraction” is often used to indicate cases where we focus on a general case and ignore a specific instance of a problem. Given this meaning of the word, how are functions with parameters an example of abstraction? Written answer 6 Free Response: When breaking a problem down, you often encounter elements that you want to use repeatedly in your code. Sometimes it's appropriate to write a new function; at other times it's appropriate to write a loop. There is no hard-and-fast rule as to which is better, but what do you think? What kinds of circumstances would lead you to writing a function versus using a loop? Written answer 7 A simplified representation of something more complex used to help you manage complexity, focus on concepts, and reason problems at a higher level. Written answer 8 A group of programming instructions/code that can be repeated and are reusable abstractions that reduce the complexity of writing and maintaining programs. Written answer 9 A collection of commands made available to a programmer. Written answer 10 A description of the behavior of a command, function, library, etc. Written answer 11 A collection of commands/functions, typically with a shared purpose. Written answer 12 An extra piece of information that you pass to the function to customize it for a specific need. Written answer 13 A programming construct that repeats a group of commands for a specified number of times. Written answer 14 "loop" by another name - the repetition of a statement, process, or procedure. Written answer 15 A problem solving approach to make a complex program simpler in which you break down a system to gain insight into the subsystems that make it up. Written answer