AP Computer Science Principles EXAM Quizlet

25 July 2022
4.7 (114 reviews)
160 test answers

Unlock all answers in this set

Unlock answers (156)
question
Overflow
answer
error that results when the number of bits is not enough to hold the number, like a car's odometer "rolling over"
question
Round-off
answer
error that results when the number of bits is not enough to represent the actual number, like 3 digits to represent π as 3.14
question
Lossy
answer
Compressing data in a way that throws some data away and makes it almost impossible to recover the original, great compression, like JPEG images
question
Lossless
answer
Compressing data in a way that preserves all data away and allows full recovery of the original, good compression -- usually not as good as lossy, like PNG images
question
Metadata
answer
data about data, like a camera storing the location, aperture, shutter speed, etc. for a digital photo
question
Sequencing
answer
code flows line by line, one after another, like a recipe
question
Selection
answer
a boolean condition to determine which of two algorithmic paths are taken, aka if-then
question
Iteration
answer
using a looping control structure, like while, for, foreach, repeat, repeat-until, etc.
question
Reasonable Time
answer
polynomial in the number of steps an algorithm takes in the worst case based on the input size
question
Not reasonable time
answer
Usually exponential in the number of steps, like doubling every time your input grows by one
question
Heuristic
answer
using a "rule" to guide an algorithm, like always walking toward the north star if you were stuck in a forest
question
Undecidable
answer
A problem that is so difficult, we can't ever create an algorithm that would be able to answer yes or no for all inputs, like determining if a user's program run on some input would always stop and not run forever
question
Linear Search
answer
Going one by one vs starting in the middle and going left/right like looking for a word in the dictionary
question
Binary Search
answer
requires the list to be sorted in order and then cutting the list in half
question
APIs
answer
Application Programming Interface
question
Citizen Science
answer
Lots of people to help with a scientific project, like asking everyone around the world to count the butterflies they see one day
question
Cloud Computing
answer
Using distributed calculations and/or storage for big data or a web application
question
Crowdsourcing
answer
Asking lots of users online to help with something, like funding a project, or running SETI@Home to help look for extraterrestrial signals
question
Creative Commons
answer
An alternative to copyright that allows people to declare how they want their artistic creations to be shared, remixed, used in noncommercial contexts, and how the policy should propagate with remixed versions
question
Open Access
answer
A policy that allows people to have read access to things, e.g., libraries or online data
question
Moore's Law
answer
The # of transistors on a chip doubles every two years
question
Peer-to-peer Networks
answer
A system where one user's computer connects through the Internet to another user's computer without going through an intermediary "centralized" computer to manage the connection
question
Digital Divide
answer
The idea that some communities / populations have less access to computing than others
question
ISP
answer
Internet Service Provider
question
How does internet communication arrive at its destination?
answer
Speech on the Internet goes from the source to an ISP, into the cloud, out of the cloud to another ISP, and to its destination
question
How can the government control speech on the Internet?
answer
1) It can try to control the speaker or the speaker's ISP, by criminalizing certain kinds of speech. But that won't work if the speaker isn't in the same country as the listener. 2)It can try to control the listener, by prohibiting possession of certain kinds of materials. In the U.S., possession of copyrighted software without an appropriate license is illegal, as is possession of other copyrighted material with the intent to profit from redistributing it. 3) The government can try to control the intermediaries.
question
How can Internet posters evaded being convicted for defamation/slander on the Web?
answer
The posters could evade responsibility as long as they remained anonymous, as they easily could on the Internet.
question
What has Congress given ISPs relating to an Internet Defamation case?
answer
Congress had given the ISPs a complete waiver of responsibility for the consequences of false and damag- ing statements, even when the ISP knew they were false.
question
Internet Protocol Hourglass
answer
Each protocol interfaces only to those in the layers immediately above and below it, and all data is turned into IP bit packets in order to pass from an application to one of the physical media that make up the network. -Email, Web, Phone -SMTP, HTTP -TCP, UDP -IP -Wire, Fiber, Radio
question
TCP
answer
Transmission Control Protocol Guarantees reliable transmission by breaking messages into packets, keeping track of which packets have been received successfully, resending any that have been lost, and specifying the order for reassembling the data on the other end.
question
UDP
answer
User Datagram Protocol provides timely but unreliable message delivery
question
HTTP
answer
HyperText Transport Protocol which is used for sending and receiving web pages
question
SMTP
answer
Simple Mail Transport Protocol used for sending email.
question
What does "End to End" mean in regards to the Internet?
answer
"End to End," in the Internet, means that the switches making up the core of the network should be dumb—optimized to carry out their single limited function of passing packets.
question
RFC
answer
Request for Comment Standards adopted through a remarkable process of consensus- building, nonhierarchical in the extreme. Someone posts a proposal, and a cycle of comment and revision, of buy-in and objection, eventually converges on something useful, if not universally regarded as perfect.
question
Shortcut for going from binary to hexadecimal
answer
To translate a binary numeral (like 11010111012) to hexadecimal, start by splitting it into groups of four bits, from right-to-left (like this: 11 0101 1101). Then determine the value of each group and write the corresponding hex digit.
question
Internet
answer
A network of independent but connected devices all over the world.
question
World Wide Web
answer
The collection of interlinked website documents (such as HTML files) that you can view with a web browser by typing addresses like http://bjc.berkeley.edu/website/privacy.html.
question
HTML
answer
Hypertext markup language Most web pages are written with ________
question
URL
answer
Uniform Resource Locator An address for accessing specific web data located on a server
question
Server
answer
A computer hosting data for others to access
question
Protocol
answer
the standard for communication between browsers and servers (usually "http" or "https") Sometimes not visible in browsers like Google Chrome
question
Domain Name
answer
The name of the server that hosts the data (bjc.berkeley.edu)
question
Path
answer
the location of the data in a hierarchy of folders on the server (Website/privacy.html)
question
Protocols
answer
Standards for communication
question
IP
answer
Internet Protocol An addressing system that finds paths to distant computers Specifies how a router handles a request for another IP address.
question
Redundant
answer
There are multiple pathways among the physical connections of the Internet to create redundancy. Even if one pathway is unavailable, there is still another way to transmit a message from sender to receiver
question
Hiearchial
answer
There are two ____________ Internet addressing systems, domain names and IP addresses. These address ______________ works much like the postal system, which locates people first by state, then city, then street, then house number, then apartment, and then finally person.
question
Fault Tolerance
answer
ability to work around problems
question
Scalability
answer
the ability of the net to keep working even as the size of the network and the amount of traffic over the network increase.
question
Virus
answer
A kind of malware that tries to spread itself over the network to other computers.
question
Antivirus Software
answer
Helps protect against virus attacks
question
Phishing
answer
An attacker sends you an email that appears to be from some official organization (such as your bank) and tricks you into giving information to the attackers (such as your bank password).
question
DDoS
answer
Distributed Denial of Service -Consists of sending a lot of requests to a server at the same time. This can overload the server's network bandwidth. -Causes a temporary inability to reach the targeted server so other users of that server are denied service.
question
Which protocols are used to keep secure HTTP connections?
answer
Transport Layer Security (TLS) or maybe an older version called Secure Sockets Layer (SSL) With these protocols, the site you are visiting sends its public key, and your browser uses it to encrypt the information you send.
question
Certificate Authorities
answer
Used by many websites for encryption to protect files and information that is transmitted over the Internet. They issue certificates to verify the identity of a user or computer.
question
Public IP Address
answer
The IP address that is logged by various servers/devices when you connect to them through your internet connection.
question
Private IP Address
answer
An IP address that's reserved for internal use behind a router or other Network Address Translation (NAT) device, apart from the public.
question
IP v4
answer
This address is big enough to support 2^32 computers. That's about four billion (4 · 109), but there are more than seven billion people on Earth, so there aren't enough IP addresses to go around. Each of the four numbers in a typical IP address today is an eight-bit byte with a value between 0 and 255
question
IP v6
answer
The long-term solution is to increase the length of an IP address. The new IP addresses are 128 bits wide, which is enough to support 2^128 (about 1038) computers.
question
Routers
answer
The "connection points" of the Internet. Networking devices that route traffic between subnetworks on the Internet.
question
Packets
answer
When you send a message over the Internet, your computer divides it into small chunks called __________ that it sends individually, each on its own path. A __________ can include any kind of data: text, numbers, lists, etc.
question
Packet Switching Network
answer
A digital networking communications method that groups all transmitted data into suitably sized blocks, called packets, which are transmitted via a medium that may be shared by multiple simultaneous communication sessions. Example : Internet
question
Hierarchy of Abstractions
answer
Manages the complexity of the Internet by hiding the details of lower levels of the system. The highest level of abstraction includes the most general features of the Internet that have to work the same across all devices. At lowers levels of abstraction, things get more device-specific.
question
Application Layer Protocols
answer
The highest level of abstraction because they manage how data is interpreted and displayed to users. These protocols give meaning to the bits sent by lower-level protocols; user and server computers must agree on what the bits mean, and application protocols (like HTTP) offer this.
question
Transport Layer Protocols
answer
Manage the breakdown of a message into packets to be transmitted by lower level protocols and also the reconstruction of the message from the packets upon arrival.
question
Internet Layer Protocols
answer
Manage the pathways that the data packets travel across networks. These protocols treat the Internet like one large network even though the physical reality on the lower level is one of many tiny subnetworks.
question
Network Interface Hardware
answer
Also known as Link Layer All Internet devices connect through a physical interface that uses a protocol to manage the connection to the local network. These local protocols are the least abstract because they deal directly with your physical hardware.
question
DNS
answer
Domain Name System The hierarchical addressing protocol that is human-readable
question
Who is in charge of the Internet?
answer
The computers on the Internet and the connections among them don't belong to any one organization.
question
ICANN
answer
the Internet Corporation for Assigned Names and Numbers Controls the DNS hierarchy and the allocation of IP addresses.
question
For how long has the U.S. dominated the Internet and why?
answer
The U.S. has "controlled" the Internet up until 2009. The Advanced Research Project Agency (ARPA) first developed the Internet in 1969.
question
Open Protocols
answer
Standards that are not owned by a company
question
IETF
answer
(The Internet Engineering Task Force) and the Internet Society oversee Internet protocols
question
What does the Internet rely on to operate properly?
answer
The internet relies on the cooperation of many different elements.
question
Firewall
answer
Used to limit the kinds of connections (HTTP requests, incoming mail, etc.) outsiders can make to your computer.
question
Cipher
answer
The set of rules you are using to encode the information
question
Key
answer
What tells you how to arrange the cipher's rules. _______ is applied using an algorithm to a string or block of unencrypted text to produce encrypted.
question
Deciphering
answer
Analyzing the code and working back from it
question
Monoalphabetic Cipher
answer
A class of ciphers where the code is based on one letter of the alphabet standing for another letter consistently throughout the message
question
Brute force
answer
Trying all the possible ways to crack a code
question
Frequency Analysis
answer
Based on the idea that every language has its own specific patterns. The study of the frequency of letters or groups of letters in a ciphertext.
question
Crib
answer
Words, letters, and phrases that are so common that it is hard to form a sentence without them Examples: e and the
question
Polyalphabetic Cipher
answer
The way you scramble the alphabet actually changes throughout the message Example: Vigenère cipher
question
Vigenère Square
answer
Alphabet goes up on the top and also to the side in order to help write a code.
question
How can you crack Vigenère cipher?
answer
By using a type of frequency analysis developed by Charles Babbage. Babbage realized that some patterns in a long message may still show up and he counted how many letters separated those repeated patterns.
question
One time pad encryption
answer
Only way to create an unbreakable cipher. Uses the key that is as long as the message itself. Once a sheet is used for a message you destroy it. Then you use the next sheet for the next message so you never repeat a key. As long as you keep the pad safe, no one can ever decrypt the message.
question
The Enigma Machine
answer
An example of a one time pad encryption device.
question
The British Bombe
answer
Device developed by Alan Turing used by the British military to crack the enigma machine. As long as this device knew 20 characters of the message it could crack the code.
question
Prime number
answer
Numbers only divisible by themselves and one. Very useful for internet security because of this trait.
question
Public Key
answer
A code that is available for anyone to use.
question
Private Key
answer
A code that must remain confidential to its respective owner.
question
How does Public Key/Private Key Cryptography work?
answer
Example: If Bob wants to send sensitive data to Alice, and wants to be sure that only Alice may be able to read it, he will encrypt the data with Alice's Public Key. Only Alice has access to her corresponding Private Key and as a result is the only person with the capability of decrypting the encrypted data back into its original form. As only Alice has access to her Private Key, it is possible that only Alice can decrypt the encrypted data. Even if someone else gains access to the encrypted data, it will remain confidential as they should not have access to Alice's Private Key.
question
Encryption
answer
Works by converting information or data into a language that cannot be understood in one glance. Usually, the information is sent to a person who can decrypt it using a key only they have access, keeping the information's privacy intact.
question
Three principles of Encryption?
answer
1) Authentication 2) Integrity 3) Non-repudation
question
Authentication
answer
Helps to verify that original author of the code is what he or she claims to be.
question
Integrity
answer
Essential towards maintaining the privacy of the message because it must be known that the message was not tampered with in any way, shape, or form.
question
Non-repudiation
answer
Where the user sends a message to another person but later denies he or she actually sent the message, causing confusion and bringing the integrity of the message into question.
question
Three types of encryption?
answer
1) secret key cryptography 2) public key cryptography 3) hash functions
question
Secret key cryptography
answer
Where a single key is sent with the message to another user for the receiver to decode the message.
question
Public key cryptography
answer
Where the user has a public key that he or she uses to encrypt the message to send to the receiver who will then use his or her private key to decode the message.
question
Hash function
answer
Types of systems where the user sends a plain text message to another user without a key. They are usually generated based on the message which helps determine whether the integrity of the message has been tampered.
question
Diffie-Hellman-Merkle Method
answer
A method of secret key agreement makes secret key distribution much easier.
question
How does the Diffie-Hellman-Merkle Method work?
answer
In Diffie-Hellman, Alice and Bob make the shared secret key, online, together, in full view of any other eavesdropper. The breakthrough allows Alice and Bob to openly exchange some Diffie-Hellman numbers. In private, they use each other's DH numbers, their secret random numbers, and the DH method to agree on the same secret key. Although the eavesdropper knows the DH method and copies Alice and Bob's conversation, he cannot figure out Alice and Bob's agreed-on secret key.
question
What are some problems of the Diffie-Hellman-Merkle Method?
answer
1) Lack of authentication 2) Failing to provide a versatile means for secret key exchange.
question
Caesar Cipher
answer
Also known as a shift cipher, is one of the simplest forms of encryption. It is a substitution cipher where each letter in the original message (called the plaintext) is replaced with a letter corresponding to a certain number of letters up or down in the alphabet.
question
AND
answer
a Boolean operator. *Both* have to be true in order for it to evaluate to true.
question
OR
answer
a Boolean operator. one or the other has to be true in order for it to evaluate to true.
question
NOT
answer
a Boolean operator. Everything except the entered input is true.
question
Boolean Expression
answer
an expression that results in a __________ value, that is, in a value of either true or false .
question
Composition of Functions
answer
An act or mechanism to combine simple functions to build more complicated ones.
question
Conditional Statement
answer
Set of rules performed if a certain condition is met.
question
Data Type
answer
A classification of data which tells the compiler or interpreter how the programmer intends to use the data. Examples include : real, integer, float (decimal point number)
question
Debugging
answer
A multi-step process that involves identifying a problem, isolating the source of the problem, and then either correcting the problem or determining a way to work around it. The final step of ______________ is to test the correction or workaround and make sure it works.
question
Default Value
answer
What the code is set to when it is started.
question
If () Clause
answer
Keep Checking: If this is true Then do this
question
If () . . . Else Clause
answer
Keep Checking: If this is true . . . then do this . . . and if it is not true then do this
question
Input Type
answer
Set up different variables to take a specific ______ _______.
question
Lists
answer
Reports a newly created _________ with the given items. The _______ items can be anything: text, numbers, blocks, scripts, and even other ______.
question
Mathematical expression
answer
Numbers, symbols and operators (such as + and ×) grouped together that show the value of something.
question
Nested IFs
answer
If you need to test for more than one condition, then take one of several actions, depending on the result of the tests, you can nest multiple IF statements together in one formula.
question
Predicate
answer
A ________ is a special kind of reporter that *always reports true or false*. ________ have a hexagonal shape. The special shape is a reminder that ______________ don't generally make sense in an input slot of blocks that are expecting a number or text.
question
Reporter block
answer
Has an oval shape. It is called a " ______ " because when it's run, instead of carrying out an action, it reports a value that can be used as an input to another block.
question
Predicate block
answer
A ________ is a special kind of reporter that always reports true or false. ________ have a hexagonal shape. The special shape is a reminder that predicates don't generally make sense in an input slot of blocks that are expecting a number or text.
question
Script variable
answer
Used when you only need a variable temporarily, during the running of a particular script. You can use ____ ________ block to make the variable. Example : for loop, the (length) only works inside the for loop.
question
() < ()
answer
an Operators block and a Boolean block. The block checks if the first value is less than the other value. If it is greater, the block returns true; if not, it returns false.
question
() = ()
answer
an Operators block and a Boolean block. The block checks if the first value is equal to the other value. If the values are equal, the block returns true; if not, false. This block is not case-sensitive.
question
() > ()
answer
an Operators block and a Boolean block. The block checks if the first value is greater than the other value. If it is less, the block returns true; if not, it returns false.
question
() and ()
answer
an Operators block and a Boolean block. The block joins two boolean blocks so they both have to be true to return true. If they are both true, the block returns true; if they are not all true or none true, it returns false.
question
() mod ()
answer
finds the remainder after division of one number by another
question
() or ()
answer
an Operators block and a Boolean block. The block joins two boolean blocks so any one of them can be true to return true — if at least one of them is true, the block returns true; if neither of them are true, it returns false. This block can be stacked inside itself — this can be used to fit more booleans in.
question
Abs ()
answer
Takes the ___________ ___________ of a number. The distance the number is away from zero. It is always positive.
question
Ceiling of ()
answer
Rounding up
question
FALSE
answer
reported input is false
question
Floor of ()
answer
Rounding down
question
If ()
answer
Keep Checking: If this is true Then do this
question
If () . . . Else ()
answer
Keep Checking: If this is true . . . then do this . . . and if it is not true then do this
question
Join words () >
answer
An Operators block and a Reporter block. The block concatenates, or "links" the two values together and reports the result Example : print "This is my" + " " + variable + " " + "class."
question
Not ()
answer
an Operators block and a Boolean block. The block checks if the boolean inside it is false — if it is false, the block returns true; if the condition is true, it returns false.
question
Report ()
answer
Reporters that report Boolean (true or false) values.
question
Script Variables
answer
Used when you only need a variable temporarily, during the running of a particular script. You can use ____ ________ block to make the variable.
question
Set (variable name) to (value)
answer
Variables block and a Stack block. The block will set the specified variable to the given value: a string or number. Example : Set (score) to (0)
question
Touching ()?
answer
A Sensing block and a Boolean block. The block checks if its sprite is touching the mouse-pointer, edge, or another sprite (a Reporter block holding the sprite's name can be used). If the sprite is touching the selected object, the block returns true; if it is not, it returns false.
question
TRUE
answer
reported input is true
question
Unicode () as letter
answer
Reports the letter with a given code. Letters and other characters are represented inside the computer using a numeric code called Unicode. Unicode can represent the characters of all human languages, plus many non-letter symbols.
question
Unicode of ()
answer
Reports the Unicode value of a letter. Letters and other characters are represented inside the computer using a numeric code called Unicode. Type or paste a single character into the input to get its Unicode number.
question
T and T equals
answer
T
question
T and F equals
answer
F
question
F and T equals
answer
F
question
F and F equals
answer
F
question
T or T equals
answer
T
question
T or F equals
answer
T
question
F or T equals
answer
T
question
F or F equals
answer
F
question
Why is the use of variables, script variables, and input variables important?
answer
Because important information can be maintained and referenced. They can symbolically represent anything from numbers to words which can be helpful when programming in Snap.
question
Why is abstraction important?
answer
It eliminates the details and condenses it down to one line of code.
question
Why is it useful to specify the type of input that a block is expected to receive?
answer
So the function does not result in an error or does not work in the way the user intended it.
question
Logical Error or Semantic Error
answer
You are not logically setting up the program to process correctly.
question
Algorithim
answer
A standard way to perform an operation.
question
Tip for debugging code
answer
Put a wait after every command