Font size
WorksheetsAP CSP Final Review
Total questions: 118
Worksheet time: 2hrs 42mins
Octal Number System
Which of the following is TRUE regarding lossless and lossy compressions?
An example of lossless compression is a .jpg file
Lossless uses inexact approximations while lossy does not·
You can completely reconstruct lossless but not lossy compression ·
You can completely reconstruct lossy but not lossless compression
All of the following would be shown in metadata except:
Width and Height of an Image
Type of Compression
Number of Colors
Resolution
Which of the following is FALSE regarding file sizes?
1 Megabyte = 1,000 kilobytes
1 Petabyte = 1,000 Terabytes
1 Megabyte = 1,000 bytes
1 Terabyte = 1,000 gigabytes
Which of the following is FALSE regarding types of files and the file sizes they are measured in?
A .jpg (JPEG) file is typically measured in megabytes
The entire amount of information transferred over the entire Internet is typically measured in terabytes
A .txt file is typically measured in kilobytes
An .mov file is typically measured in gigabytes
Your best friend has 50 small images to send to you; each of which is 500 KB. How much space do they take up overall in MB?
25 MB
250 MB
2.5 MB
25,000 MB
You have 1100 MB of data. Your best friend has 3000 MB of data. Will all of this data fit on your 4 GB thumb drive?
Yes all this data will fit on the thumb drive
The data will not fit on the thumb drive
A problem solving approach to find a satisfactory solution where finding an optimal or exact solution is impossible (for example, with compression) is called ________________.
simplistic
heuristic
abstraction
How many bytes are required to encode an image that is 25 pixels wide and 50 pixels tall, if you encode each pixel with 3 bytes (24 bits) of RGB data (Note: in addition, there are also 24 bits of metadata)
1,250 bytes
3,774 bytes
3,750 bytes
249 bytes
The number of pixels in a given area is called:
Resolution
Density
RGB
Hexidecimal
Approximately how much bigger (how many more bytes) is a megabyte than a kilobyte?
1,000 times bigger
10,000 times bigger
100,000 times bigger
1,000,000 times bigger
Which of the following is TRUE regarding data compression?
Data compression is only useful for files being transmitted over the Internet
Regardless of the compression technique used, once a data file is compressed, it cannot be restored to its original size.
Sending a compressed version of a file ensures that the contents of the file cannot be intercepted by an unauthorized user.
There are trade-offs involved in choosing a compression technique for storing and transmitting data.
A student is transferring photos from her camera to her computer. The student notices that the saved photos on her computer are lower quality than the original raw photo on her camera.
Which of the following could be a possible explanation for the difference in image quality?
The saved image files were compressed with a lossy compression technique.
The saved image files were compressed with a lossless compression technique.
The saved image files were not compressed properly.
Some information is lost every time a file is saved on a computer.
On a computer, a bit represents
A single unit of infortmation
A new idea
How fast information travels
A set of rules controlling how information is exchanged or interpretted
The bit rate refers to
How many bits a computer can store
How many bits represent a single file
How many bits travel per unit of time, such as 8 bits per second.
How long it takes for a one bit to get sent to its destination, such as two milliseconds.
Latency refers to
How long it takes for one bit to get sent to its destination (for example 2 milliseconds)
How many bits are sent in a unit of time (for example 8 bits per second)
How many bits it takes to represent a value
How bits can represent text
Bandwidth is a measured by
lag or latency
bit rate
memory capacity
chunk size
A set of rules that determines how information is exchanged or transmitted between two devices is called a(n):
abstraction
number system
protocol
innovation
ASCII or American Standard Code for Information Interchange is:
a universally recognized raw text format any computer can understand
a universally recognized image format any computer can understand
a protocol for data transmission between two devices
an encryption method to keep data transferred over the Internet secure
A simplified representation of something more complex is a(n):
protocol
innovation
abstraction
conversion
What is NOT TRUE about abstractions?
They are simplified representations of how things work in the real world
They allow you to focus on relevant concepts
They allow you to think about a complicated problem in an easier to understand way
They are perfect representations of how things work in the real world
Convert 1010 to decimal:
20
10
8
9
Convert 1111 to decimal
16
4
5
15
Convert 0110 0110 to decimal:
100
101
102
103
How many values can you represent with 4 bits?
4
(24-1) or 8
(24 - 1) or 15
(24) or 16
How many more values can you represent if you add one bit?
One more value
You can't predict this
Double the amount of values
What is the largest value you can represent with three bits?
3
6
7
8
Which value is greatest?
Decimal 100
Binary 100
Decimal 256
Binary 1111 1111
What is the greatest decimal value you represent with 4 bits?
4
(24-1) or 8
(24 - 1) or 15
(24) or 16
What is the best explanation for why digital data is represented in computers in binary?
The binary number system is the only system flexible enough to allow for representing data other than numbers.
It's easier, cheaper, and more reliable to build machines and devices that only have to distinguish between binary states.
It typically takes fewer digits to represent a number in binary when compared to other number systems (for example, the decimal number system)
It's impossible to build a computing machine that uses anything but binary to represent numbers
What is the 4-bit binary number for the decimal number Ten (10)?
0010
1010
0110
0101
How many bits is a single ASCII character?
1
2
4
8
What is the minimum number of bits you would need to encode the 26 letters of the alphabet plus a space - a total of 27 characters?
2 bits
3 bits
5 bits
6 bits
Number systems with different bases such as binary (base-2) and decimal (base-10) are all used to view and represent digital data.
Which of the following is NOT true about representing digital data?
At one of the lowest levels of abstraction, all digital data can be represented in binary using only combinations of the digits zero and one.
The same value (number) can have a different representation depending on the number system used to represent it.
Groups of bits can be used to represent abstractions, including but not limited to numbers and characters.
Some large numbers cannot be represented in binary and can only be represented in decimal.
Consider the following three binary numbers:
01010
010000
1110
Which of the following lists the numbers in order from least to greatest?
010000
1110
01010
01010
1110
010000
01010
010000
1110
1110
01010
010000
Bit is short for
Nibble
Byte
Binary Digit
Biggit
An Internet attack that causes a server to crash by making repeated requests to the same IP address:
DDoS (Distributed Denial of Service)
Cache Poisoning
DNS (Domain Name System) Hijacking
Phishing
Internet Protocol
Protocol that breaks data down into packets and addresses them with source and destination information
A DNS attack in which numerous pings are made to the same IP, causing it to crash
Protocol used by the World Wide Web. It describes how messages are formatted and interchanged, and how web servers respond to commands.
Protocol that provides reliable, ordered, and error-checked delivery of a stream of packets on the internet
Which of the following best describes the basic idea of network redundancy or fault tolerance?
A system that never fails
If part of the system fails, the operation continues without interruption
A program that does not allow inputs out of a range given by a programmer
A program that does not allow loss of precision
HTTP
Protocol used to check if all packets of data have been received
Protocol for relaying packets across an interconnected network (Internet)
Protocol used by web browsers to communicate with the web server and fetch the webpages that you see
A cryptographic protocol used to securely transmit data over an unsecured network
How many bits are in an IPV4 address?
32
64
128
256
Small chunks of information that have been carefully formed from larger chunks of information
routers
chunks
packets
IP addresses
A number assigned to any item that is connected to the Internet.
mailing address
phone number
DNS
IP address
A set of rules governing the exchange or transmission of data between devices.
protocol
communication
asbtraction
innovation
T he various protocols in use on the internet are said to operate in layers in which the protocol(s) at each layer solve one problem related to networked communication, and higher layers are built on top of, and rely on, the lower layers to do their jobs.
From the list provided choose the two (2) answers that correctly describe which internet protocol relies on the other. For example: if protocol A relies on protocol B, it means that A is a higher level protocol than B, and thus protocol B must exist and work properly in order for protocol A to do its job.
Select two answers.
TCP/IP relies on HTTP
HTTP relies on TCP/IP
DNS relies on TCP/IP
TCP/IP relies on DNS
A school starts tracking which websites each computer in the school is visiting by monitoring the packets leaving the school. A sample of the information they have collected appears in the image.
Which of the following is MOST likely to be answerable using all the data collected by this monitoring?
Which students are visiting social media sites from school
Which classes are assigning the most homework using the computers
Which programs students are running on the lab computers
Which websites are most frequently visited before and after school hours from a school computer
Which of the following BEST describes how protocols on the Internet (e.g. IP, TCP, HTTP) make use of abstraction to accomplish their respective purposes?
High level protocols take into account specific implementation details of lower level protocols to ensure they are compatible.
Low level protocols can provide functionality to high level protocols without revealing the details of how this is accomplished.
Low level protocols are written in binary while high level protocols are written in hexadecimal.
High level protocols can take on the role of a low level protocol in the event of failure in the system.
This type of encryption uses one key for both encryption and decryption.
symmetric
asymmetric
private
public
If your message is encrypted using public key encryption it is _________________ to crack.
impossible
relatively easy
computationally hard
relatively hard
Which of the following is the best explanation for the concept of "The cost of free"?
Apps and websites that collect and track data about you in exchange for providing you a service free of cost.
You receiving coupons for stores you frequently shop at.
Receiving emails from an online store that you always buy items from.
Apps and websites that collect and track data about you in exchange for providing you a service that you must pay for.
A broad term for datasets so large or complex that traditional data processing applications are inadequate.
Moore's law
Big data
Exponential Growth
Data analysis
According to Moore's Law, the world will produce as much data in the next _______ years as currently existed in all of humanity prior to that:
Two
Three
Five
Six
Above is an image from Google Trends that plots Cats and Dogs.
Which of the following is NOT a reasonable conclusion you can come up with looking at this chart?
The sharp spike in dogs trends could be due to an increase in dog attack stories during that year
This chart proves that people love dogs more than they do cats
People search for dogs more than they do cats
It's possible there were more funny dog videos than cat videos during this period of time
To interpret data usually means making key assumptions. If those assumptions are wrong, our entire analysis may be wrong as well. That being said, which of the following is NOT a reason that Google Flu Trends (GFT) eventually failed?
#1 - People reading about the flu skewed the results that GFT came up with on how many would people would get affected by the flu
#2 - In most cases GFT overestimated the number of individuals that would get the flu
#3 - By Google recommending searches to users, it skewed what terms people were searching for
All three statements (#1, 2, 3) are reasons GFT eventually failed
“Digital Divide” leads to some groups being over- or under-represented. Access and use of the Internet can differ by all of the following EXCEPT:
Relationship Status
Race
Education
Disability
When someone attempts to compromise a target by flooding it with requests from multiple systems that is called a:
SSL/TLS layer
Virus
Phishing Scam
DDoS Attack
When someone tries to get you to give up personal information through email or a bogus website it is called a:
DDoS Attack
Phishing Scam
Virus
SSL/TLS layer
Public key cryptography is form of:
Symmetric Encryption
Caesar Cipher
Random Substitution Cipher
Asymmetric Encryption
In our example involving Bob, Alice, and Eve, in order for Bob to send a message to Alice, Bob must obtain Alice's:
Public Key
Private Key
Encryption Key
Decryption Key
Why are computers better than humans at breaking encryptions such as the Vigenère?
Computers are smarter than humans
Computers are faster than humans
The Vigenère was originally designed by a computer
They are not; humans are better as breaking Vigenère encryptions than computers
This type of cipher involves a shift for each letter of the plaintext where the amount of shift is determined by the “key” which translates letters of the alphabet to an amount of shift:
Caesar Cipher
Random Substitution Cipher
Vigenere Cipher
Public Key Encryption Cipher
This type of cipher shifts the alphabet by some number of characters:
Caesar Cipher
Random Substitution Cipher
Vigenere Cipher
Public Key Encryption Cipher
This type of cipher maps each letter of the alphabet to a randomly chosen other letters of the alphabet:
Caesar Cipher
Random Substitution Cipher
Vigenere Cipher
Public Key Encryption Cipher
These types of text files in our browsers keep a record of our movements on the Internet:
Clipboard
Data Track
Cookies
Internet Log
Another name for a password:
Cryptographic key
Vigenere cipher
Caeser cipher
Decryption key
Which of the following images shows the path and ending location of the robot that will result from executing the code above. The starting location of the robot is shown as dotted triangle for cases where the robot does not start and end at the same location.
Line 3 and Line 4
Lines 5, 6, 7, 8, and 9
Line 8 and Line 9
Line 9
Which of the following is NOT true about functions in programming?
Functions are reusable programming abstractions.
Functions help reduce the complexity of writing and maintaining programs.
Functions cannot make calls to other functions within the same program.
Functions help break a problem into logical chunks.
Once defined, a function can be called many times from different parts of a program.
Programming languages have some similarities and differences to the "natural" language you use in everyday speech. Select the two true statements about programming languages:
Ambiguities in natural language necessitate the creation of programming languages for controlling a computer
Compared to the number of words in a natural language, the number of defined words in a programming language is very small.
The number of defined words in a programming language is about the same as the number of words in a natural language.
There are typically many possible ways to interpret an instruction written in a programming language.
What is one important naming convention of functions?
A function name should indicate how long the function takes to run.
Two functions with similar behavior should be given identical names to indicate the relationship between them.
A function name should be as descriptive as possible to indicate what the function does.
Function names should be organized alphabetically.
The function name should begin with a number that indicates the order in which it should be executed.
Which one of the following statements about functions is TRUE?
A function can change names over the course of a program.
Code can be added or removed dynamically from a function while the program is running
Functions can be called using different names depending on where in the program they are called.
Two functions can be given identical names as long as their code is identical.
Two functions in a single program can have different names but contain identical code.
Which of the following will call the function drawStar?
For this scenario related to turtle drawing, indicate whether it is better to write a loop or a function (or a set of functions) to handle the task:
Drawing out the letters of a word "HELLO"
Loop
Function(s)
For this scenario related to turtle drawing, indicate whether it is better to write a loop or a function (or a set of functions) to handle the task:
Drawing a hexagon (six-sided shape)
Loop
Function(s)
For this scenario related to turtle drawing, indicate whether it is better to write a loop or a function (or a set of functions) to handle the task:
Drawing 100 tiny dots in a line
Loop
Function(s)
For this scenario related to turtle drawing, indicate whether it is better to write a loop or a function (or a set of functions) to handle the task:
Drawing a circle of any size at any point on the screen
Loop
Function(s)
Why are parameters useful when programming?
Parameters determine the number of times the function will run.
Parameters allow for more flexible, generalized behaviors in functions.
Parameters are useful for teams of programmers because they help define the boundaries of the problem they are trying to solve.
Parameters change the order of operations within a function.
What is the most likely outcome of running the code shown here?
It will draw a star with each side 150 pixels long.
The program will stop with an error at line 3 because parameters may not be used in for loops.
The program will stop with an error at line 5 because it is dividing by 0.
The program will run without error, but will not draw anything.
When programmers work together, what is an example of how abstraction in programming can promote collaboration?
Team members can rely on one another to explain their code.
Programmers can write functions without needing to know what they do or how they should work.
Programmers can use functions created by their partners, relying on the functionality without needing to know the specific details of how the function is implemented.
In order for programmers to work together, they must work in the same room.
Abstraction allows programmers to brainstorm more creative solutions to problems.
