finals apcsp sem 1 schmoop
Major websites typically have multiple IP addresses that route to the same web page. Which of the following characteristics does this demonstrate? (A)Redundant routing (B)DNS hierarchy (C)System bandwidth (D)Open standards
(A)Redundant routing
An algorithm involves performing ten steps without repeating any of them and with no extra conditions. Which of the following best describes what kind of algorithm this is? (A)Sequence (B)Selection (C)Iteration (D)Execution
(A)Sequence
Which of the following best describes how algorithms are implemented? (A)Program instructions (B)Program execution (C)Automation (D)Processes
(A)Program instructions
Which of the following is true? Select two answers. (A)Bandwidth measures the speed of a connection between two computers. (B)Bandwidth is the amount of data sent in a fixed amount of time. (C)Bandwidth is the number of bits in a packet. (D)Bandwidth measures how long two computers are connected.
(A)Bandwidth measures the speed of a connection between two computers. (B)Bandwidth is the amount of data sent in a fixed amount of time.
At the lowest level, what is digital data represented in? (A)Binary (B)Octal (C)Decimal (D)Hexadecimal
(A)Binary
The programming language PHP is ideal for creating webpages to deliver over the internet, while the programming language C is ideal for creating small programs to work on tiny embedded systems like watches. Without knowing anything else about these languages, which of the following is true about C and PHP? Select two answers. (A)Both languages can express any algorithm. (B)PHP is more complicated than C. (C)Both languages support sequencing, selection, and iteration. (D)C is easier to learn than PHP.
(A)Both languages can express any algorithm. (C)Both languages support sequencing, selection, and iteration.
Which of the following is NOT true about collaborating on software? (A)Collaboration requires the same skills as individual programming. (B)Collaboration makes the work for each individual programmer less complicated. (C)Collaboration requires strong communication skills for everyone involved. (D)When collaborating, programmers can work on different components.
(A)Collaboration requires the same skills as individual programming.
A doctor is contributing to a piece of software that times the doses of medicine for patients at a hospital. This is the first time she's seen the program. Which of the following should she do to improve the software? Select two answers. (A)Consult the program documentation. (B)Pass the program to someone more experienced in programming. (C)Add parts to the program incrementally, testing each segment as she goes. (D)Add all her code to the program at once and update the codebase immediately.
(A)Consult the program documentation. (C)Add parts to the program incrementally, testing each segment as she goes.
Which of the following does NOT change with the size or scale of data? (A)Data type (B)Data usage methods (C)Storage techniques (D)Processing techniques
(A)Data type
Which of the following is true about multiple CPUs? (A)Every computer process can run on multiple CPUs at the same time. (B)Multiple CPUs only work if the running program runs multiple processes, one for each CPU. (C)If a computer has multiple CPUs, it will speed up the system because each running program can be run on a different CPU. (D)A process can't be split between CPUs.
(A)Every computer process can run on multiple CPUs at the same time.
Which of the following situations would NOT be a good opportunity to use geolocation? (A)Getting a person's address for shipping goods. (B)Tailoring information to the user's home country. (C)Providing a weather report for the user's area. (D)Locating restaurants near the user.
(A)Getting a person's address for shipping goods.
A number from one base can be converted into any other base. Which of the following are equivalent to the binary value 1111? Select two answers. (A)Hexadecimal F (B)Hexadecimal 10 (C)Decimal 15 (D)Decimal 10
(A)Hexadecimal F (C)Decimal 15
Which of the following is true about machine language? (A)Knowing machine language can help the programmer write better programs. (B)In order for a programmer to write computer instructions, they need to know machine language. (C)Modern programming languages make machine language irrelevant. (D)Only computers can understand machine language.
(A)Knowing machine language can help the programmer write better programs.
Processes use input, output, and what other two parts of a computer? Select two answers. (A)Memory (B)Variables (C)Algorithms (D)Central Processing Unit (CPU)
(A)Memory (D)Central Processing Unit (CPU)
When data gets broken into blocks to be sent across the internet, what are those blocks called? (A)Packets (B)Bandwidth (C)Chunks (D)Bytes
(A)Packets
Social media has made it easier than ever for people to communicate instantly to a large audience. Which of the following BEST represents a downside to this fact? (A)People can post to social media without considering their words carefully. (B)Social media users can lie more easily than users of traditional media. (C)Unlike traditional media, it's hard for users to know what information to trust. (D)Information gets produced too quickly for anyone to read.
(A)People can post to social media without considering their words carefully.
A team of programmers is collaborating on a new video game. Which of the following are a good way to collaborate on the work? Select two answers. (A)Split the game by levels, assigning one to each programmer, then bring them together at the end. (B)Take turns working on the game, with each programmer adding onto the previous programmer's work. (C)Split the game into different features and assign one to each programmer, then bring them together at the end. (D)Take turns working on each component of the game, then bring them together at the end.
(A)Split the game by levels, assigning one to each programmer, then bring them together at the end. (C)Split the game into different features and assign one to each programmer, then bring them together at the end.
Which of the following skills is necessary for collaborative programming but NOT for individual programming? (A)Writing justification of changes in the code. (B)Changing code to make it fit the style guidelines. (C)Splitting code into isolated components for modifying and testing. (D)Debugging software.
(A)Writing justification of changes in the code.
Is English a language for algorithms? Why or why not? (A)Yes; natural language can express algorithms. (B)Yes; all coding languages use some English words. (C)No; the only languages for algorithms are pseudocode and programming languages. (D)No; the only languages for algorithms are programming languages.
(A)Yes; natural language can express algorithms.
A piece of old accounting software at a small company uses 8 bits to store the value of each transaction because the developers didn't realize the company would grow so quickly. This allows values of less than $256 (that's $28) per transaction. The CFO at the company believes their transactions won't reach higher than $200 million each. If they want to cover this maximum, what is the minimum number of bits they should use to store the amount per transaction? (A)16 (B)32 (C)64 (D)128
(B)32
Which of the following best describes the different skillset needed in collaboration than from working alone? Select two answers. (A)Collaborative programming requires more creative problem-solving. (B)Collaborators need to connect their independent components into a cohesive whole. (C)Collaborators need strong communication skills, whereas a solo worker does not. (D)Collaboration requires more hardware than solo programming.
(B)Collaborators need to connect their independent components into a cohesive whole. (C)Collaborators need strong communication skills, whereas a solo worker does not.
Programmer A is tasked with developing the software that simulates traffic patterns across a bridge in a major city. Her algorithm works perfectly in every scenario except snow. Programmer B has an algorithm that simulates traffic in snowy scenarios. Which of the following best describes how the two programmers' projects could be combined? (A)Combine the two algorithms using a sequential algorithm. (B)Combine the two algorithms using a selection algorithm. (C)Combine the two algorithms using an iterative algorithm. (D)Programmer A should extend her algorithm to handle the possibility of snow.
(B)Combine the two algorithms using a selection algorithm.
An online retailer wants to prepare for five years into the future, when they would like to find trends in the sales data and support several thousand transactions without any problems. What are the best ways they can accomplish this goal? Select two answers. (A)Hire several hundred data scientists to examine the data. (B)Create software that examines the data automatically. (C)Invest in extra storage space. (D)Ensure storage capacity is scalable.
(B)Create software that examines the data automatically. (D)Ensure storage capacity is scalable.
Which of the following is the MOST similar to SSL/TLS? (A)HTML (B)HTTP (C)TCP/IP (D)Packets
(B)HTTP
When representing numbers, what advantage does hexadecimal hold over decimal? (A)People are used to hexadecimal, so it feels natural. (B)Hexadecimal numbers are shorter than decimal or binary. (C)Computers use hexadecimal bytes to represent numbers. (D)Computers can only display hexadecimal or binary.
(B)Hexadecimal numbers are shorter than decimal or binary.
A programmer has internet access at work for business reasons. Which of the following tools is likely to decrease productivity? (A)Video calling apps (B)News feed (C)Music streaming apps (D)Email
(B)News feed
In addition to programming languages, there are two other kinds of languages that are used for specifying algorithms for people to read. What are these languages? Select two answers. (A)Hypertext (B)Pseudocode (C)Java (D)Natural language
(B)Pseudocode (D)Natural language
Which of the following can programmers do with variables? Select two answers. (A)Erase (B)Read (C)Write (D)Compile
(B)Read (C)Write
A program for a Pollyanna Swap takes a set of names, shuffles them, and distributes one name to each participant. If a participant gets their own name, the program returns that name to the set. Which of the following are used in this program? Select two answers. (A)Sequence (B)Selection (C)Iteration (D)Execution
(B)Selection (C)Iteration
Which of the following best describes how program instructions executed? (A)Iteratively (B)Sequentially (C)Algorithmically (D)Conditionally
(B)Sequentially
Which of the following BEST describes the purpose of smart technology? Select two answers. (A)Smart technology replaces the need for people (B)Smart technology assists people in their everyday needs. (C)Smart technology enhances pre-existing tools by having them learn from the user. (D)Smart technology makes decisions for people.
(B)Smart technology assists people in their everyday needs. (C)Smart technology enhances pre-existing tools by having them learn from the user.
Which of the following is NOT a reason to get feedback about a program from its users? (A)Users can provide insight into program use cases to improve the program. (B)Users are better at solving their personal problems than developers are. (C)Consultation with users can generate new ideas for solving problems. (D)Programs are targeted toward users, so it's ideal to match their wants and needs.
(B)Users are better at solving their personal problems than developers are.
Which of the following is NOT true about programming languages? (A)The best languages are readable and clear. (B)Some languages are better at certain algorithms than others. (C)All programming languages have the same features. (D)Most programming languages specialize in a domain.
(C)All programming languages have the same features.
An insurance company is developing software to list all prices from lowest to highest for available packages. Two developers have created different basic algorithms for the software. Algorithm A: Step 1: Collect all possible deals.Step 2: Call a procedure that sorts the deals by price.Step 3: Display all deals from lowest to highest price. Algorithm B: Step 1: In the list of deals, find the lowest price.Step 2: Display that deal as the first available package.Step 3: Find the next lowest deal and display it as the next available package.Step 4: Repeat Step 3 until all deals are displayed. Which of the following statements is true? (A)Algorithm A always displays all the deals in the correct order, but Algorithm B does not. (B)Algorithm B always displays all the deals in the correct order, but Algorithm A does not. (C)Both Algorithm A and Algorithm B always display all the deals in the correct order. (D)Neither Algorithm A nor B displays all the deals in the correct order.
(C)Both Algorithm A and Algorithm B always display all the deals in the correct order.
A simple graphics program designed for old computers allows the user to select colors from a list of available colors. The user can either select the color from a graphical palette or instead type in the value for a specific color. What base could the computer use to represent these color values? Select two answers. (A)Binary (B)Octal (C)Decimal (D)Hexadecimal
(C)Decimal (D)Hexadecimal
Consider the following algorithm for building a tower of rectangular blocks with a square hole in the center. Step 1: Place two blocks vertically, one block width apart. Step 2: Place two blocks horizontally atop the vertical blocks, one block width apart, so that each horizontal block sits on top of a vertical block at either end. Step 3: Repeat Steps 1 and 2 until all blocks are used. Which of the following accurately describes what kind of algorithm this is? (A)Sequence (B)Selection (C)Iteration (D)Execution
(C)Iteration
"Pittsburgh Penguins" is a top trending search on Google. Which of the following would this BEST indicate? (A)The Penguins won the Stanley Cup. (B)The Penguins have a lot of fans. (C)Many people are interested in the Penguins. (D)Google has recently added a lot of pages about the Penguins.
(C)Many people are interested in the Penguins.
Which of the following statements is true? Is a programmer's job done once a complete program is shipped? (A)Once a programmer has completed the program, they can completely switch to a new project. (B)Once a program is released, it's no longer the programmer's job to fix new bugs. (C)Once a program is released, the programmer must maintain the software by fixing any unforeseen problems. (D)Even after release, a programmer must continually provide new features for the program.
(C)Once a program is released, the programmer must maintain the software by fixing any unforeseen problems.
Which of the following changes can a switch from one programming language to another NOT cause in the algorithm? (A)Expression clarity (B)Readability (C)Problem solvability (D)Execution efficiency
(C)Problem solvability
Which of the following is a major concern when a large data set needs room to grow? (A)Security (B)Processing (C)Scalability (D)Collecting
(C)Scalability
A student is working on a program to calculate compound interest. When he checks the calculations by hand, most of them are off by a small amount, but some of them are correct. He spends a whole day looking for the problem, but can't find it. What should he do? (A)Move on to another part of the program and revisit the problem later (B)Fudge the values so they show up correctly (C)Continue experimenting until the bug goes away (D)Ask another programmer to help spot the bug
(D)Ask another programmer to help spot the bug
Which of the following statements is true? (A)Latency is the amount of time it takes for a computer to download a set number of bits. (B)Latency is the amount of time it takes for a computer to upload a set number of bits. (C)Latency is the amount of time it takes a server to build a packet for sending. (D)Latency is the amount of time it takes for a computer to receive data after another computer has sent it.
(D)Latency is the amount of time it takes for a computer to receive data after another computer has sent it.
Which of the following aspects does NOT affect how large data sets should be handled? (A)The scaling of the system that stores the data (B)The size of the data itself (C)The structure of the data (D)The medium used to store the data
(D)The medium used to store the data
A tech company maintains software used for filing taxes. The software relies on a lot of old code, which the company is working hard to update. One of their users sends in a feature request asking they add a middle initial field because their system only takes the first and last names. The lead programmer says they can't add this feature for at least two years because it requires changing a lot of the old code, which is currently a work-in-progress. Which of the following is true about the situation? (A)Since a user requested it, this should be the company's first priority (B)The user is always right, which means the programmers should pause the current projects to make sure this fix gets released soon. (C)The programmers know the code best, which means the user needs to wait for them to decide when it's a high priority. (D)The programmers and the users should compromise by making sure the feature comes out soon.
(D)The programmers and the users should compromise by making sure the feature comes out soon.
Which of the following is NOT an example of a large data set? (A)The collective data for a social media website (B)Banking data for a major US bank (C)Transactions for a chain of major retail stores (D)The results from a scientific experiment at a private company
(D)The results from a scientific experiment at a private company