College Board Final Test Reflection
The test was difficult, but not impossible. Because I was given ample time to complete the assessment and was granted access to the internet and notes, I managed to achieve a good score. However, the task was arduous and time-consuming. I was surprised by the absence of code-related questions; most problems were indicative of problem-solving and recalling key terminology taught in the course.
Important Topics
(A list of some important terms and topics that came up during the test)
Citizen science
Citizen science is when the public voluntarily helps conduct scientific research. Citizen scientists may design experiments, collect data, analyze results, and solve problems. In national parks, most citizen scientists collect data with tools provided by project directors.
The Internet Engineering Task Force
The Internet Engineering Task Force is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite. It has no formal membership roster or requirements and all its participants are volunteers.
Digital Divide
The digital divide is the unequal access to digital technology, including smartphones, tablets, laptops, and the internet. The digital divide creates a division and inequality around access to information and resources.
Reasonable Time Algorithm
Unreasonable time: Algorithms with exponential or factorial efficiencies are examples of algorithms that run in an unreasonable amount of time. Reasonable time: Algorithms with a polynomial efficiency or lower (constant, linear, square, cube, etc.) are said to run in a reasonable amount of time.
Symmetric Encryption
Symmetric encryption is a type of encryption where only one key (a secret key) is used to both encrypt and decrypt electronic data. The entities communicating via symmetric encryption must exchange the key so that it can be used in the decryption process.
Reviewing Missed Topics
Polynomial
A polynomial is defined as an expression which is composed of variables, constants and exponents, that are combined using mathematical operations such as addition, subtraction, multiplication and division (No division operation by a variable).
Abstraction
In software engineering and computer science, abstraction is the process of generalizing concrete details, such as attributes, away from the study of objects and systems to focus attention on details of greater importance.
“Or” and “And” Statements
True and False:
TRUE AND TRUE = TRUE TRUE AND FALSE = FALSE FALSE AND FALSE = FALSE
True or False:
TRUE OR TRUE = TRUE TRUE OR FALSE = TRUE FALSE OR TRUE = TRUE FALSE OR FALSE = FALSE
Special Cases:
TRUE OR FALSE OR FALSE OR FALSE OR FALSE = TRUE
Numeric and:
1 AND 1 = 1 1 AND 0 = 0 0 AND 0 = 0
Numeric or:
1 OR 0 = 1 0 OR 1 = 1 1 OR 1 = 1 0 OR 0 = 0
Special Case:
1 OR 0 OR 0 = 1
Psuedocode
Pseudocode is a notation resembling a simplified programming language, used in program design.
Psuedocode was present in nearly the entire final, I was required to read it and understand it to answer a large percentage of the questions on the test. I used the CollegeBoard notes on Psuedocode to prepare me, here are some of the major points:
Pseudocode: Pseudocode is a way to represent an algorithm using a mix of natural language and simplified programming constructs. It’s used to describe the logic of a program without writing full code. Variables: Variables can be declared using simple names, and their values can be assigned and manipulated within pseudocode. Loops: Pseudocode allows the description of loops and repetitions, such as “REPEAT UNTIL” and “REPEAT (n) TIMES,” to control program flow.
CollegeBoard information on Psuedocode
#REPEAT + IF
REPEAT n TIMES
IF condition THEN
// Code block
END IF
END REPEAT
#FUNCTION
FUNCTION calculateSum(a, b)
// Code code code
END FUNCTION
#LIST
DECLARE list[]
ADD item TO list
FOR EACH item IN list
// Code code code
END FOR