Back to United States Computer Science Principles
United States · College BoardQ&A
Computer Science PrinciplesQ&A by dot point
A short Q&A bank for every United States Computer Science Principles syllabus dot point. Each question and answer is drawn directly from our worked dot-point page, so you can scan key concepts before opening the long-form answer.
Big Idea 1: Creative Development
- Topic 1.1 Collaboration: collaboration produces a program that reflects diverse perspectives, and effective collaboration uses defined roles, consensus building and tools such as pair programming.2Q&A pairs
- Topic 1.4 Identifying and Correcting Errors: programs contain logic, syntax, runtime and overflow errors, and programmers find and fix them by testing with carefully chosen inputs and debugging.3Q&A pairs
- Topic 1.3 Program Design and Development: programs are developed iteratively through investigating, designing, prototyping and testing, using tools such as program requirements, specifications and feedback.3Q&A pairs
- Topic 1.2 Program Function and Purpose: a program is a sequence of instructions that accomplishes a goal; programs receive input, produce output, and their behavior is shaped by purpose and intended users.2Q&A pairs
Big Idea 2: Data
- Topic 2.1 Binary Numbers: computers represent all data with bits (binary digits); numbers, text, images and sound are encoded in binary, and fixed bit-widths cause overflow and rounding.2Q&A pairs
- Topic 2.2 Data Compression: compression reduces the number of bits used to store data; lossless compression preserves all information, while lossy compression discards some to save more space.2Q&A pairs
- Topic 2.3 Extracting Information from Data: information is extracted from data through processing, filtering, transforming and combining data sets, and correlation does not imply causation.2Q&A pairs
- Topic 2.4 Using Programs with Data: programs process large data sets through cleaning, filtering, classifying and transforming data, often using lists and iteration to scale to large amounts of data.2Q&A pairs
Big Idea 3: Algorithms and Programming
- Topic 3.11/3.17/3.18 Binary Search and Efficiency: binary search finds a value in a sorted list far faster than linear search, and algorithms are compared by efficiency, with some problems being unsolvable or only approximable.2Q&A pairs
- Topic 3.6/3.7 Conditionals and Nested Conditionals: conditional (IF/ELSE) statements select which code runs based on a Boolean condition, and nested conditionals handle multiple decision paths.2Q&A pairs
- Topic 3.2 Data Abstraction: data abstraction manages complexity by giving a collection of data a single name, most commonly using a list to represent many values as one variable.2Q&A pairs
- Topic 3.9 Developing Algorithms: an algorithm is a finite set of instructions that accomplishes a task, built by combining sequencing, selection and iteration, and different algorithms can solve the same problem.2Q&A pairs
- Topic 3.12-3.14 Procedures and Libraries: procedures are named, reusable blocks with parameters and return values, and libraries and APIs package procedures so programmers reuse code through abstraction.1Q&A pairs
- Topic 3.8 Iteration: iteration (REPEAT n TIMES and REPEAT UNTIL) repeats a block of code, with the number of repetitions controlled by a count or a condition.1Q&A pairs
- Topic 3.10 Lists: a list is an ordered collection of elements accessed by index; AP CSP lists are 1-indexed and support traversal and modification with APPEND, INSERT and REMOVE.2Q&A pairs
- Topic 3.3/3.5 Mathematical and Boolean Expressions: programs evaluate arithmetic (including MOD) and Boolean expressions using relational and logical operators (AND, OR, NOT) that produce true or false.2Q&A pairs
- Topic 3.15/3.16 Random Values and Simulations: simulations are simplified, abstract models of real phenomena that often use random values to represent variability, trading detail for speed, safety and repeatability.2Q&A pairs
- Topic 3.18 Undecidable Problems: some problems cannot be solved by any algorithm for all inputs (undecidable problems), and some solvable problems take unreasonable time, so heuristics give approximate answers.2Q&A pairs
- Topic 3.1 Variables and Assignments: a variable is a named reference to a stored value, and the assignment operator stores the value of an expression into a variable.1Q&A pairs
Big Idea 4: Computer Systems and Networks
- Topic 4.2 Fault Tolerance: a system is fault tolerant if it continues to operate when some components fail; redundancy (multiple paths or copies) is the main way networks achieve fault tolerance.2Q&A pairs
- Topic 4.3 Parallel and Distributed Computing: parallel computing runs tasks simultaneously on multiple processors and distributed computing spreads work across multiple computers, improving speed but with limits.2Q&A pairs
- Topic 4.1 The Internet: the Internet is a network of networks that moves data in packets using protocols such as IP and TCP, with addressing, routing and standards enabling scalable communication.2Q&A pairs
Big Idea 5: Impact of Computing
- Topic 5.1 Beneficial and Harmful Effects: computing innovations have both beneficial and harmful effects on society, economy and culture, and effects may be intended or unintended.2Q&A pairs
- Topic 5.3 Computing Bias: computing innovations can reflect existing human biases through biased data or design choices, and bias can be embedded intentionally or unintentionally.2Q&A pairs
- Topic 5.4 Crowdsourcing: crowdsourcing uses the input of a large number of people, often via the Internet, to obtain ideas, services, content, funding or data.2Q&A pairs
- Topic 5.5 Legal and Ethical Concerns: computing raises legal and ethical issues including intellectual property, licensing, plagiarism, privacy and the responsible use and sharing of material and data.2Q&A pairs
- Topic 5.6 Safe Computing: personal data is collected and stored by computing systems, and safe computing uses authentication, encryption and awareness of threats such as malware and phishing to protect it.2Q&A pairs
- Topic 5.2 The Digital Divide: the digital divide is the unequal access to computing devices and the Internet across groups, shaped by socioeconomic, geographic and demographic factors.2Q&A pairs