Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

‭Terms/‬

‭●‬ ‭Byte pair encoding‬


‭-‬ ‭Same as lossless compression‬
‭●‬ ‭Byte vs bit‬
‭-‬ ‭Byte is 8 bits(can make up 255 decimal max)‬
‭●‬ ‭Creative commons(different types ig)‬
‭-‬ ‭a licensing system that allows creators to share their work with‬
‭specific permissions for others to use, remix, or distribute it.‬
‭●‬ ‭Overflow vs round-off error‬
‭-‬ ‭Overflow is when too little bit to represent that big of number‬
‭-‬ ‭Round-off is when it can’t represent number completely‬
‭●‬ ‭Open standard and internet protocols‬
‭-‬ ‭All computers use same standards and protocols so they can‬
‭interact with each other without miscommunication due to‬
‭different protocols‬
‭-‬ ‭EX: if one computer sends a letter in for of binary but other‬
‭computer receives a number instead due to different protocol‬
‭●‬ ‭DIfferent internet protocol versions‬
‭-‬ ‭IPv4 is a 32-bit address, whereas IPv6 is a 128-bit hexadecimal‬
‭address.‬
‭-‬ ‭IPv6 provides a large address space, and it contains a simple‬
‭header as compared to IPv4.‬
‭-‬ ‭IPv6 allows for a greater number of addresses than IPv4, which‬
‭allows more devices to be connected to the Internet.‬
‭●‬ ‭Public key‬
‭-‬ ‭Key anyone has access to and anyone can use‬
‭●‬ ‭Symmetric key encryption‬
‭-‬ ‭Only 1 key(secret key) used to decrypt and encrypt electronic‬
‭data‬
‭●‬ ‭Public Key encryption‬
‭-‬ ‭Process of using public and private key to keep secure‬
‭information without sharing each others private key‬
‭●‬ ‭Private key‬
‭-‬ ‭Key used to decrypt public key and used to keep secure‬
‭communication‬
‭●‬ ‭Sender vs recipient key‬
‭-‬ ‭the sender uses the recipient's public key to encrypt a message.‬
‭-‬ ‭To decrypt this message, the recipient uses their private key.‬
‭●‬ ‭(sum = sum plus count repeat bs)‬
‭-‬ ‭thing‬
‭●‬ ‭Crowdsourcing‬
‭-‬ ‭A model in which many online users combine efforts to help fund‬
‭projects, generate ideas, or create goods or services (like‬
‭Wikipedia).‬
‭●‬ ‭Citizen science‬
‭-‬ ‭Crowdsourcing for science! The participation of volunteers from the‬
‭public in a scientific research project (like collecting rain samples or‬
‭counting butterflies).‬
‭●‬ ‭Parallel computation solution‬
‭-‬ ‭the use of multiple processors or computers working together‬
‭simultaneously to solve a problem‬
‭●‬ ‭Reasonable time‬
‭-‬ ‭thing‬
‭●‬ ‭Unreasonable time bs‬
‭-‬ ‭If the number of steps is an exponential function of the size of‬
‭the input (or another function larger than any polynomial), we‬
‭say that the algorithm takes an unreasonable amount of time.‬
‭-‬ ‭Ex. 2^n‬
‭●‬ ‭Which of the following best explains how an analog audio signal is‬
‭typically represented by a computer‬
‭-‬ ‭An analog audio signal is measured at regular intervals‬
‭●‬ ‭Binary vs linear sequence‬
‭-‬ ‭Linear‬
‭a.‬ ‭Goes through each index in list one by one till it finds value‬
‭or list ends‬
‭b.‬ ‭Formula is O(n) - (idek what that means)‬
‭-‬ ‭Binary‬
‭a.‬ ‭list is in order‬
‭b.‬ ‭then split in half and the middle value is checked(removes‬
‭decimal so u can use even or odd lists w/o limitation.‬
‭c.‬ ‭If middle value is greater than target it discards the whole‬
‭right side of it and only focuses on left‬
‭d.‬ ‭Then repeats process until target is found or it goes‬
‭through whole list‬
‭e.‬ ‭Formula is LOG sub2 (n)‬

‭●‬ ‭Internet vs WWW‬


‭-‬ ‭The World Wide Web is governed by the HTTP protocol, which‬
‭controls how web page data is transmitted.‬
‭-‬ ‭Internet is network of computing devices‬
‭●‬ ‭Rogue access point‬
‭-‬ ‭Wifi uses access points to like do WIFI‬
‭-‬ ‭Rogue access point is where unauthorized mfs use access point‬
‭hidden by fake wifi name(like coffee shop wifi) and can intercept‬
‭ur shit‬
‭-‬ ‭The answer on test is they can see your network traffic‬
‭●‬ ‭Transmission Control protocol‬
‭-‬ ‭giving addresses to each computer on the Internet‬
‭●‬ ‭Internet protocol‬
‭-‬ ‭a set of rules and guidelines that govern how data is transmitted‬
‭over the internet.‬
‭●‬ ‭Certificate Authority‬
‭-‬ ‭A certificate authority verifies the authenticity of encryption keys‬
‭used in secured communications.‬
‭●‬ ‭Heuristic‬
‭-‬ ‭a problem-solving strategy or method that is not guaranteed to‬
‭find the optimal solution, but is designed to find a satisfactory‬
‭solution in a reasonable amount of time.‬

‭Big idea 1: Creative development‬


s‭ yntax error‬‭: A mistake in typed code that violates‬‭the rules of the programming‬
‭language. Typically, code with syntax errors will not run.‬

l‭ ogic error‬‭: A mistake in an algorithm or program‬‭that causes it to behave unexpectedly or‬


‭return the incorrect value.‬
r‭ un-time error‬‭: A mistake in a program that happens only when the program is actually‬
‭run, such as a program attempting to access memory that does not exist.‬

‭ verflow error‬‭: Error that results when the number‬‭of bits is not enough to represent the‬
o
‭number (like a car’s odometer “rolling over”).‬‭Learn‬‭more in‬‭Number limits, overflow, and‬
‭round-off‬‭.‬

‭Big idea 2: Data‬


‭bit‬‭: A binary digit, either 0 or 1.‬‭Learn more in‬‭Binary numbers‬‭.‬

‭byte‬‭: A sequence of 8 bits.‬‭Learn more in‬‭Bytes‬‭.‬

r‭ oundoff‬‭: Error that results when the number of bits‬‭is not enough to represent the‬
‭number with full precision (like using 3 digits to represent as 3.14).‬‭Learn more in‬‭Number‬
‭limits, overflow, and roundoff‬‭.‬

‭ nalog data‬‭: Values that change smoothly, rather than‬‭in discrete intervals, over time. For‬
a
‭example, the pitch and volume of a live concert.‬‭Learn‬‭more from‬‭analog to digital data‬‭.‬

l‭ ossless‬‭: Compressing data in a way that preserves‬‭all data away and allows full recovery‬
‭of the original.‬‭Learn more in‬‭Data compression‬‭.‬

l‭ ossy‬‭: Compressing data in a way that discards some‬‭data and makes it impossible to‬
‭recover the original.‬‭Learn more in‬‭Data compression‬‭.‬

‭metadata‬‭: Data about data, like descriptive information‬‭about a file or a row in a database.‬

‭Big idea 3: Algorithms and programming‬


s‭ equencing‬‭: The sequential execution of steps in an‬‭algorithm or code in a program (like‬
‭steps in a recipe).‬‭Learn more in‬‭The building blocks‬‭of algorithms‬‭.‬
s‭ election‬‭: A Boolean condition to determine which of two paths are taken in an algorithm‬
‭or program.‬‭Learn more in‬‭The building blocks of algorithms‬‭and‬‭Conditionals: if, else, and‬
‭Booleans‬‭.‬

i‭ teration‬‭: The repetition of steps in an algorithm‬‭or program for a certain amount of times‬
‭or until a certain condition is met.‬‭Learn more in‬‭The building blocks of algorithms‬‭and‬
‭Repetition‬‭.‬

l‭ inear search‬‭: An algorithm that iterates through‬‭each item in a list until it finds the target‬
‭value.‬‭Learn more in‬‭Measuring an algorithm's efficiency‬‭.‬

‭ inary search‬‭: An algorithm that searches a‬‭sorted‬‭list for a value by repeatedly splitting‬
b
‭the list in half.‬‭Learn more in‬‭Measuring an algorithm's‬‭efficiency‬‭.‬

r‭ easonable time‬‭: A run time for an algorithm that‬‭doesn't increase faster than a‬
‭polynomial function of the input size (like etc). An unreasonable run time would increase‬
‭superpolynomial (like or).‬‭Learn more in‬‭Categorizing‬‭run time efficiency‬‭.‬

‭ euristic‬‭: A technique that helps an algorithm find‬‭a good solution in a hard problem (like‬
h
‭always walking toward the north star when you are stuck in a forest).‬‭Learn more in‬‭Using‬
‭heuristics‬‭.‬

‭ ndecidable‬‭: A problem that is so logically difficult,‬‭we can’t ever create an algorithm that‬
u
‭would be able to answer "yes or "no" for all inputs (like the halting problem).‬‭Learn more in‬
‭Undecidable problems‬‭.‬

‭library‬‭: A collection of procedures that are useful‬‭in creating programs.‬

‭ PI‬‭: Application Programming Interface, a library‬‭of procedures and a description of how‬


A
‭to call each procedure.‬

‭ odularity‬‭: The separation of a program into independent‬‭modules that are each‬


m
‭responsible for one aspect of the program's functionality.‬
t‭ raversal‬‭: The iteration over the items in a list. A full traversal iterates over every item,‬
‭while a partial traversal iterates over a subset of the items.‬

‭Big idea 4: Computer systems and networks‬


c‭ omputing device‬‭: A physical device that can run a‬‭program, such as a computer, smart‬
‭phone, or smart sensor.‬

c‭ omputer network‬‭: A group of interconnected computing‬‭devices capable of sending or‬


‭receiving data.‬‭Learn more in‬‭Computer networks‬‭.‬

‭ andwidth‬‭: The maximum amount of data that can be‬‭sent in a fixed period of time over a‬
b
‭network connection, typically measured in bits per second.‬‭Learn more in‬‭Bit rate,‬
‭bandwidth, and latency‬‭.‬

‭ rotocol‬‭: An agreed upon set of rules that specify‬‭the behavior of a system.‬‭Learn more in‬
p
‭Open protocol development‬

‭(Opens in a new window)‬

‭.‬

s‭ calability‬‭: The ability of a system to adjust scale‬‭to meet new demands.‬‭Learn more in‬
‭Scalable systems‬‭.‬

I‭ P (Internet Protocol)‬‭: The protocol that determines‬‭how to address nodes on the‬


‭network (with IP addresses) and how to route data from one node to a destination node‬
‭(using routers).‬‭Learn more in‬‭IP addresses‬‭and‬‭Routing‬‭with redundancy‬‭.‬

‭ CP (Transmission Control Protocol)‬‭: A data transport‬‭protocol that includes‬


T
‭mechanisms for reliably transmitting packets to a destination.‬‭Learn more in‬‭Transmission‬
‭Control Protocol (TCP)‬‭.‬
‭ DP (User Datagram Protocol)‬‭: A lightweight data transport protocol with minimal error‬
U
‭checking.‬‭Learn more in‬‭User Datagram Pro‬‭tocol (UDP)‬‭.‬

‭ orld Wide Web‬‭: A system of linked pages, media, and‬‭files, browsable over HTTP.‬‭Learn‬
W
‭more in‬‭The World Wide Web‬

‭(Opens in a new window)‬

‭.‬

‭ TTP (Hypertext Transfer Protocol)‬‭: The protocol that‬‭powers the Web, used to request‬
H
‭web pages from servers and submit form data to servers.‬‭Learn more in‬‭Hypertext Transfer‬
‭Protocol‬‭.‬

‭ arallel computing‬‭: A computational model which splits‬‭a program into multiple tasks,‬
p
‭some of which can be executed simultaneously.‬‭Learn‬‭more in‬‭Parallel computing‬‭.‬

s‭ peedup‬‭: The improvement in the amount of time a parallelized‬‭program takes to solve a‬


‭problem, computed as the amount of time to complete the task sequentially divided by the‬
‭amount of time to complete the task when run in parallel.‬‭Learn more in‬‭Parallel computing‬‭.‬

‭ istributed computing‬‭: A computational model which‬‭uses multiple devices to run‬


d
‭different parts of a program.‬‭Learn more in‬‭Distributed‬‭computing‬‭.‬

‭Big idea 5: Impact of computing‬


‭ igital divide‬‭: The idea that some communities or‬‭populations have less access to‬
d
‭computing than others, typically due to limitations of Internet speed or computer‬
‭hardware access.‬‭Learn more in‬‭The digital divide‬

c‭ rowdsourcing‬‭: A model in which many online users‬‭combine efforts to help fund projects,‬
‭generate ideas, or create goods or services (like Wikipedia).‬‭Learn more in‬‭Crowdsourcing‬
‭innovations‬‭.‬
c‭ itizen science‬‭: Crowdsourcing for science! The participation of volunteers from the‬
‭public in a scientific research project (like collecting rain samples or counting butterflies).‬
‭Learn more in‬‭Citizen science‬‭.‬

‭ reative Commons‬‭: An alternative to copyright that‬‭allows people to declare how they‬


C
‭want their artistic creations to be shared, remixed, used in noncommercial contexts, and‬
‭how the policy should propagate with remixed versions.‬‭Learn more in‬‭Creative commons‬
‭and open source‬‭.‬

‭ pen access‬‭: A policy that allows people to have access‬‭to documents (like research‬
o
‭papers) for reading or data (like government datasets) for analysis.‬‭Learn more in‬‭Sharing‬
‭science research online‬‭.‬

‭ II (Personally identifiable information)‬‭: Information‬‭about an individual that can be used‬


P
‭to uniquely identify them (directly or indirectly).‬‭Learn more in‬‭PII (Personally identifiable‬
‭information)‬‭.‬

‭ ultifactor authentication (MFA)‬‭: A method of user‬‭authentication which requires the‬


m
‭user to present multiple pieces of evidence in multiple categories (such as knowledge and‬
‭possession).‬‭Learn more in‬‭Multifactor authentication‬‭.‬

‭ ncryption‬‭: The process of scrambling data to prevent‬‭unauthorized access.‬‭Learn more in‬


e
‭Encryption, decryption, and cracking‬‭.‬

s‭ ymmetric encryption‬‭: A technique for encrypting data‬‭where the same key is used to‬
‭both encrypt and decrypt data.‬‭Learn more in‬‭Symmetric‬‭encryption techniques‬‭.‬

‭ ublic key encryption‬‭: An asymmetric encryption technique‬‭that uses different keys for‬
p
‭encrypting versus decrypting data.‬‭Learn more in‬‭Public‬‭key encryption‬‭.‬

c‭ ookie‬‭: A small amount of text that tracks information‬‭about a user visiting a website.‬
‭Learn more in‬‭Web cookies‬‭.‬

‭ irus‬‭: A type of computer malware that can make copies‬‭of itself.‬‭Learn more in‬‭Computer‬
v
‭malware‬‭.‬
‭ hishing‬‭: An attack where a user is tricked into revealing private information, often via a‬
p
‭deceptive email.‬‭Learn more in‬‭Phishing attacks‬‭.‬

r‭ ogue access point‬‭: A wireless access point that provides‬‭an attacker with unauthorized‬
‭access to the traffic going over the network.‬‭Learn‬‭more in‬‭Rogue access points‬‭.‬

‭AP CSP pseudocode‬

‭Assignment, display, and input‬


a ← expression‬

‭●‬ ‭Evaluates‬‭
expression‬‭and assigns the result to the‬‭variable‬‭
a‬‭.‬

📝
‭●‬ ‭ Practice:‬‭Storing data in variables‬

DISPLAY (expression)‬

‭●‬ ‭Displays the value of‬‭ ‭, followed by a space.‬


expression‬

📝
‭●‬ ‭ Practice:‬‭Programming basics‬

INPUT ()‬

‭●‬ ‭Accepts a value from the user and returns it.‬

‭Arithmetic operators and numeric procedures‬


a + b a - b a * b a / b‬

‭●‬ ‭The arithmetic operators, +, -, *, and /, are used to perform arithmetic on‬
a‬‭and‬‭
‭ ‭.‬
b‬

📝
‭●‬ ‭ Practice:‬‭Mathematical expressions‬

a MOD b‬

‭●‬ ‭Evaluates to the remainder when a is divided by b. Assumes that‬‭


a‬‭and‬

b‬‭are positive integers.‬


📝
‭●‬ ‭ Practice:‬‭Mathematical expressions‬

RANDOM(a, b)‬

‭●‬ ‭Evaluates to a random integer from‬‭


a‬‭to‬‭
b‬‭, including‬‭
a‬‭and‬‭
b‬‭.‬

📝
‭●‬ ‭ Practice:‬‭Random numbers‬

‭Relational and Boolean operators‬


a = b a ≠ b a > b a < b a ≥ b a ≤ b‬

‭●‬ ‭The relational operators, =, ≠, >, <, ≥, and ≤ are used to test the‬
‭relationship between two expressions, variables, or values.‬
📝
‭●‬ ‭ Practice:‬‭Conditionals with if, else, and Booleans‬

NOT condition‬

‭●‬ ‭Evaluates to‬‭
true‬‭if‬‭
condition‬‭is‬‭ ‭; otherwise evaluates to‬
false‬

‭.‬
false‬

📝
‭●‬ ‭ Practice:‬‭Compound Booleans with logical operators‬

condition1 AND condition2‬


‭●‬ ‭Evaluates to‬‭


true‬‭if both‬‭
condition1‬‭and‬‭
condition2‬‭are true;‬

‭otherwise evaluates to‬‭ ‭.‬


false‬

📝
‭●‬ ‭ Practice:‬‭Compound Booleans with logical operators‬

condition1 OR condition2‬

‭●‬ ‭Evaluates to‬‭


true‬‭if‬‭
condition1‬‭is‬‭
true‬‭or if‬‭
condition‬‭is‬‭
true‬

‭or if both‬‭
condition1‬‭and‬‭
condition2‬‭are true; otherwise‬

‭evaluates to false.‬
📝
‭●‬ ‭ Practice:‬‭Compound Booleans with logical operators‬

‭Selection‬
IF (<condition>) { <block of statements> }‬

‭●‬ ‭The code in‬‭


block of statements‬‭is executed if the‬‭Boolean‬

‭expression‬‭
condition‬‭evaluates to‬‭ ‭; no action‬‭is taken if‬
true‬

condition‬‭evaluates to false.‬

📝
‭●‬ ‭ Practice:‬‭Conditionals with if, else, and Booleans‬
IF (<condition>) { <first block of statements> }‬

ELSE { <second block of statements> }‬

‭●‬ ‭The code in‬‭


first block of statements‬‭is executed‬‭if the‬

‭Boolean expression‬‭
condition‬‭evaluates to‬‭ ‭; otherwise‬‭the‬
true‬

‭code in‬‭
second block of statements‬‭is executed.‬

📝
‭●‬ ‭ Practice:‬‭Conditionals with if, else, and Booleans‬‭,‬‭Nested‬
‭conditionals‬

‭Iteration‬

‭**‬‭
REPEAT n TIMES { <block of statements> }‬

‭**‬

‭●‬ ‭The code in‬‭


block of statements‬‭is executed‬‭
n‬‭times.‬

📝
‭●‬ ‭ Practice:‬‭Numbered repetition of instructions‬

‭**‬‭
REPEAT UNTIL (condition) { <block of statements>‬‭
}‬

‭**‬

‭●‬ ‭The code in‬‭


block of statements‬‭is repeated until‬‭the Boolean‬

‭expression‬‭
condition‬‭evaluates to‬‭ ‭.‬
true‬

📝
‭●‬ ‭ Practice:‬‭Conditional repetition of instructions‬
‭List operations‬

‭For all list operations, if a list index is less than 1 or greater than the length of‬
‭the list, an error message is produced and the program terminates.‬

list[i]‬

‭●‬ ‭Refers to the element of‬‭


list‬‭at index‬‭
i‬‭. The first‬‭element of‬‭
list‬‭is‬

‭at index 1.‬


📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

list[i] ← list[j]‬

‭●‬ ‭Assigns the value of‬‭


list[j]‬‭to‬‭ ‭.‬
list[i]‬

📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

list ← [value1, value2, value3]‬


‭●‬ ‭Assigns‬‭ ‭,‬‭


value1‬ ‭, and‬‭
value2‬ value3‬‭to‬‭ ‭,‬‭
list[1]‬ ‭,‬
list[2]‬

‭, respectively.‬
list[3]‬

📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

FOR EACH item IN list { <block of statements> }‬


‭●‬ ‭The variable‬‭


item‬‭is assigned the value of each element‬‭of‬‭
list‬

‭sequentially, in order from the first element to the last element. The‬
‭code in‬‭
block of statements‬‭is executed once for each‬

‭assignment of item.‬
📝
‭●‬ ‭ Practice:‬‭Iterating over lists with loops‬

INSERT (list, i, value)‬


‭●‬ ‭Any values in‬‭


list‬‭at indices greater than or equal‬‭to‬‭
i‬‭are shifted to‬

‭the right. The length of‬‭


list‬‭is increased by 1, and‬‭
value‬‭is placed at‬

‭index‬‭
i‬‭in‬‭ ‭.‬
list‬

📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

APPEND(list, value)‬

‭●‬ ‭The length of‬‭


list‬‭is increased by 1, and‬‭
value‬‭is‬‭placed at the end‬

‭of‬‭ ‭.‬
list‬

📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

REMOVE(list, i)‬

‭●‬ ‭Removes the item at index‬‭


i‬‭in‬‭
list‬‭and shifts to‬‭the left any values at‬

‭indices greater than‬‭


i‬‭. The length of‬‭
list‬‭is decreased‬‭by 1.‬

📝
‭●‬ ‭ Practice:‬‭Storing and updating lists‬

LENGTH(list)‬

‭●‬ ‭Evaluates to the number of elements in list.‬

‭Procedures‬

‭**‬‭
PROCEDURE name (parameter1, parameter2, ...) {‬
<instructions> }‬

‭**‬

‭●‬ ‭A procedure,‬‭ ‭, takes zero or more parameters.‬‭The procedure‬


name‬

‭contains programming instructions.‬


📝
‭●‬ ‭ Practice:‬‭Defining a procedure‬‭,‬‭Procedures with‬‭parameters‬

‭**‬‭
PROCEDURE name (parameter1, parameter2, ...) {‬
<instructions> RETURN (expression) }‬

‭**‬

‭●‬ ‭A procedure,‬‭ ‭, takes zero or more parameters.‬‭The procedure‬


name‬

‭contains programming instructions and returns the value of‬


‭. The‬‭
expression‬
‭ RETURN‬‭statement may appear at any‬‭point inside‬

‭the procedure and causes an immediate return from the procedure‬


‭back to the calling program.‬
📝
‭●‬ ‭ Practice:‬‭Procedures with return values‬
‭Robot‬

‭If the robot attempts to move to a square that is not open or is beyond the‬
‭edge of the grid, the robot will stay in its current location and the program will‬
‭terminate.‬

MOVE_FORWARD ()‬

‭●‬ ‭The robot moves one square forward in the direction it is facing.‬

ROTATE_LEFT ()‬

‭●‬ ‭The robot rotates in place 90 degrees counterclockwise (i.e. makes an‬
‭in-place left turn).‬

ROTATE_RIGHT ()‬

‭●‬ ‭The robot rotates in place 90 degrees clockwise (i.e. makes an in-place‬
‭right turn).‬

CAN_MOVE (direction)‬

‭●‬ ‭Evaluates to‬‭


true‬‭if there is an open square one square‬‭in the‬

direction‬‭relative to where the robot is facing; otherwise‬‭evaluates‬


‭to‬‭ ‭. The value of‬‭


false‬ direction‬‭can be‬‭ ‭,‬‭
left‬ ‭,‬‭
right‬ ‭,‬
forward‬

‭or‬‭ ‭.‬
backward‬
‭Section II: Create Performance Task‬
‭30% of score‬

‭●‬ C ‭ reate performance task program code, video, and student-authored‬


‭Personalized Project Reference | 9 hours in-class‬
‭●‬ ‭2 written response questions | 60 minutes end-of-course exam‬

‭The second section of the AP Computer Science Principles Exam consists of a‬


‭through-course Create performance task where you will develop a computer program of‬
‭your choice and an end-of-course written response section where you will demonstrate‬
‭your understanding of your Create performance task by answering four prompts. You‬
‭will be provided 9 hours of in-class time to complete your program, video, and develop a‬
‭Personalized Project Reference.‬

‭On the end-of-course exam, you will respond to two questions related to the code in‬
‭your Personalized Project Reference. The two questions include four distinct prompts:‬
‭Written Response 1, Written Response 2(a), Written Response 2(b), and Written‬
‭Response 2(c). You will have access to your Personalized Project Reference while‬
‭responding to these prompts. The four categories listed below align to the four‬
‭prompts.‬

‭Prompt Category‬ ‭Students should be prepared to:‬


‭Written Response 1:‬ ‭Students should be prepared to respond to‬
‭Program Design,‬ ‭prompts about their program that assess any of‬
‭Function, and Purpose‬ ‭the following learning objectives:‬

‭●‬ C ‭ RD-2.A: Describe the purpose of a‬


‭computing innovation.‬
‭●‬ ‭CRD-2.B: Explain how a program or code‬
‭segment functions.‬
‭●‬ ‭CRD-2.C: Identify input(s) to a program.‬
‭●‬ ‭CRD-2.D: Identify output(s) produced by a‬
‭program.‬
‭●‬ ‭CRD-2.E: Develop a program using a‬
‭development process.‬
‭●‬ ‭CRD-2.F: Design a program and its user‬
‭interface.‬
‭●‬ ‭CRD-2.G: Describe the purpose of a code‬
‭segment or program by writing‬
‭documentation.‬
‭Written Response 2(a):‬ ‭Students should be prepared to respond to‬
‭Algorithm Development‬ ‭prompts about their program that assess any of‬
‭the following learning objectives:‬

‭●‬ C ‭ RD-2.B: Explain how a program or code‬


‭segment functions.‬
‭●‬ ‭AAP-2.E.b: Evaluate expressions that use‬
‭relational operators.‬
‭●‬ ‭AAP-2.F.b: Evaluate expressions that use‬
‭logic operators.‬
‭●‬ ‭AAP-2.H.b: Determine the result of‬
‭conditional statements.‬
‭●‬ ‭AAP-2.J: Express an algorithm that uses‬
‭iteration without using a programming‬
‭language.‬
‭●‬ ‭AAP-2.K.b: Determine the result or side‬
‭effect of iteration statements.‬
‭●‬ ‭AAP-2.L: Compare multiple algorithms to‬
‭determine if they yield the same side effect‬
‭or result.‬
‭●‬ ‭AAP-2.M.a: Create algorithms.‬
‭●‬ ‭AAP-2.M.b: Combine and modify existing‬
‭algorithms.‬

‭Written Response 2(b):‬ ‭Students should be prepared to respond to‬


‭Errors and Testing‬ ‭prompts about their program that assess any of‬
‭the following learning objectives:‬

‭‬ C
● ‭ RD-2.I.a: Identify the error.‬
‭●‬ ‭CRD-2.I.b: Correct the error.‬
‭●‬ ‭CRD-2.J: Identify inputs and corresponding‬
‭expected outputs or behaviors that can be‬
‭used to check the correctness of an‬
‭algorithm or program.‬
‭There are many differences between the AP CSP pseudocode and the‬
‭JavaScript language syntax.‬

‭This table highlights the biggest differences:‬

‭Concept‬ ‭Pseudocode‬ ‭JavaScript‬

‭Assignment‬ ‭
a ← expression‬ var a = expression;‬

‭Equality‬ a = b‬
‭ a == b‬

‭Inequality‬ a ≠ b‬
‭ a != b‬

for (var i = 0; i <‬



‭Repetition‬ REPEAT n TIMES‬

n; i++)‬

REPEAT UNTIL‬

‭Repetition‬ while (condition)‬

(condition)‬

list[1]‬‭is first‬

‭List index‬ list[0]‬‭is first item‬

‭item‬
‭List‬ FOR EACH item‬
‭ for (var i = 0; i <‬

‭iteration‬ IN list‬
‭ list.length; i++)‬

You might also like