Explore Annotations for CS Concept
Algorithms & Programming
Return to Explore Annotations page
Algorithms
K.AP.A.01 Model daily processes and follow basic algorithms (step-by-step lists of instructions) to complete tasks. Annotation K.AP.A.01
1.AP.A.01 Model daily processes and follow basic algorithms (step-by-step lists of instructions) to complete tasks verbally, kinesthetically, via a programming language, or using a device. Annotation 1.AP.A.01
2.AP.A.01 Model daily processes by creating and following algorithms (step-by-step lists of instructions) to complete tasks verbally, kinesthetically, via a programming language, or using a device. Annotation 2.AP.A.01
3.AP.A.01 Develop and compare multiple algorithms for the same task. Annotation 3.AP.A.0
4.AP.A.01 Develop, compare, and refine multiple algorithms for the same task. Annotation 4.AP.A.01
5.AP.A.01 Develop, compare, and refine multiple algorithms for the same task and determine which algorithm is the most appropriate. Annotation 5.AP.A.01
6. AP.A.01 Use an existing algorithm or pseudocode to solve a problem. Annotation 6.AP.A.01
7. AP.A.01 Select and modify existing algorithms and pseudocode to solve complex problems. Annotation 7.AP.A.01
8. AP.A.01 Develop and implement algorithms and pseudocode to solve complex problems. Annotation 8.AP.A.01
Variables
K.AP.V.01 With guidance, model the way programs store and manipulate grade-level data by using numbers or other symbols to represent information (e.g., encode or decode words using numbers, pictographs or symbols to letters, words, or direction). Annotation K.AP.V.01
1.AP.V.01 With guidance, model the way programs store and manipulate grade-level data by using numbers or other symbols to represent information (e.g., encode or decode words using numbers, pictographs or symbols to letters, words, or direction). Annotation 1.AP.V.01
2.AP.V.01 Model the way programs store and manipulate grade-level data by using numbers or other symbols to represent information (e.g., encode or decode words using numbers, pictographs or symbols to letters, words, or direction). Annotation 2.AP.V.01
3.AP.V.01 Create programs that use variables to store and modify grade appropriate data. Annotation 3.AP.V.01
4.AP.V.01 Create programs that use variables to store and modify grade-appropriate data. Annotation 4.AP.V.01
5.AP.V.01 Create programs that use variables to store and modify grade-appropriate data. Annotation 5.AP.V.01
6. AP.V.01 Decide when and how to declare and name new variables. Annotation 6.AP.V.01
7. AP.V.01 Create clearly named variables that represent different types of data. Annotation 7.AP.V.01
8. AP.V.01 Create clearly named variables of different data types that utilize naming conventions to improve program readability; perform operations on variable values. Annotation 8.AP.V.01
Control
K.AP.C.01 With guidance, create a set of instructions (programs) to accomplish a task using a programming language, device, or unplugged activity, including sequencing, emphasizing the beginning, middle, and end. Annotation K.AP.C.01
1.AP.C.01 With guidance, create programs by using creative expression or problem solving, to accomplish tasks that include sequencing and repetition. Programming languages, robot devices, or unplugged activity can serve as the means. Annotation 1.AP.C.01
2.AP.C.01 Create programs using a programming language, robot device, or unplugged activity that utilize sequencing and repetition to solve a problem or express creative ideas. Annotation 2.AP.C.01
3.AP.C.01 Create programs using a programming language that includes sequences, loops, conditionals, and variables to solve a problem or express an idea. Annotation 3.AP.C.01
4.AP.C.01 Create programs using a programming language that includes sequences, loops, conditionals,, and variables that utilize mathematics operations to manipulate values in order to solve a problem or express an idea. Annotation 4.AP.C.01
5.AP.C.01 Create programs using a programming language that includes sequences, loops, conditionals, event handlers, and variables that utilize mathematics operations to manipulate values in order to solve a problem or express an idea. Annotation 5.AP.C.01
6. AP.C.01 Develop secure programs that utilize combinations of loops, conditionals, and the manipulation of variables representing different data types. Annotation 6.AP.C.01
7. AP.C.01 Develop secure programs that utilize combinations of loops, compound conditionals, and the manipulation of variables representing different data types. Annotation 7.AP.C.01
8. AP.C.01 Develop secure programs that utilize combinations of nested loops, compound conditionals, procedures with and without parameters, and the manipulation of variables representing different data types. Annotation 8.AP.C.01
Modularity (1)
Not addressed at grades K-2
3.AP.M.01 Decompose a simple problem into a precise set of sequences instructions. Annotation 3.AP.M.01
4.AP.M.01 Decompose a large problem into smaller, manageable sub-problems to facilitate the program development process. Annotation 4.AP.M.01
5.AP.M.01 Decompose a large problem into smaller, manageable sub-problems and then further into sets of sequenced instructions to facilitate the program development process. Annotation 5.AP.M.01
6. AP.M.01 Decompose problems and subproblems into parts to facilitate the secure design, implementation, and review of programs. Annotation 6.AP.M.01
7. AP.M.01 Decompose problems and subproblems into parts to facilitate the secure design, implementation, and review of increasingly complex programs. Annotation 7.AP.M.01
8. AP.M.01 Decompose problems and subproblems into parts to facilitate the secure design, implementation, and review of complex programs. Annotation 8.AP.M.01
Modularity (2)
Not addressed at grades K-2
3.AP.M.02 Modify, remix, or incorporate portions of an existing program into one’s own work, to develop or add more advanced features (grade-level appropriate). Annotation 3.AP.M.02
4.AP.M.02 Modify, remix, or incorporate portions of an existing program into one’s own work, to develop or add more advanced features (grade-level appropriate). Annotation 4.AP.M.02
5.AP.M.02 Modify, remix, or incorporate portions of an existing program into one’s own work, to develop or add more advanced features (grade-level appropriate). Annotation 5.AP.M.02
6. AP.M.02 Identify and use functions within a program to repeat instructions. Annotation 6.AP.M.02
7. AP.M.02 Create and use a function in a program to repeat instructions in order to organize code and make it easier to reuse. Annotation 7.AP.M.02
8. AP.M.02 Create and use a function with parameters in a program to repeat instructions in order to organize code and make it easier to reuse. Annotation 8.AP.M.02
Program Development (1)
K. AP.PD.01 With guidance, create a grade level appropriate document to illustrate thoughts, ideas, or stories in a sequential manner (e.g., storyboard, story map, sequential graphic organizer). Annotation K.AP.PD.01
1. AP.PD.01 Create a grade-level appropriate document to illustrate thoughts, ideas, or stories in a sequential manner (e.g., storyboard, story map, sequential graphic organizer). Annotation 1.AP.PD.01
2. AP.PD.01 With guidance, create a grade level appropriate document to clarify the steps that will be needed to create a sequential program and can be used to check if the program functionality is correct. Annotation 2.AP.PD.01
3. AP.PD.01 Use an iterative process to plan the development of a program by including others’ perspectives and considering user preferences while solving simple problems. Annotation 3.AP.PD.01
4. AP.PD.01 Use an iterative process to plan the development if a program by including others’ perspectives and considering user preferences while solving simple problems. Annotation 4.AP.PD.01
5. AP.PD.01 Use an iterative process to plan the development of a program by including others’ perspectives and considering user preferences while solving problems. Annotation 5.AP.PD.01
6. AP.PD.01 Seek and incorporate feedback from team members to refine the solution to a problem. Annotation 6.AP.PD.01
7. AP.PD.01 Seek and incorporate feedback from team members and users to refine the solution to a problem. Annotation 7.AP.PD.01
8. AP.PD.01 Seek and incorporate feedback from team members and users to refine the solution to a problem that meets the needs of a diverse group of users. Annotation 8.AP.PD.01
Program Development (2)
K.AP.PD.02 Give attribution to ideas, solutions, and creations of others, verbally, while developing algorithms. Annotation K.AP.PD.02
1.AP.PD.02 Give attribution to ideas, solutions, and creations of others, verbally, or written, while writing or developing algorithms and programs. Annotation 1.AP.PD.02
2.AP.PD.02 Give attribution to ideas, solutions, and creations of others, verbally and written, while writing and developing programs. Annotation 2.AP.PD.02
3.AP.PD.02 Identify instances of remixing, when ideas are borrowed and treated upon, and provide attribution. Annotation 3.AP.PD.02
4.AP.PD.02 Observe intellectual property rights and give appropriate attribution when creating or remixing programs. Annotation 4.AP.PD.02
5.AP.PD.02 Observe intellectual property rights and give appropriate attribution when creating or remixing programs. Annotation 5.AP.PD.02
6. AP.PD.02 Incorporate existing code, media, and libraries into original programs from secure sources, and give appropriate attribution. Annotation 6.AP.PD.02
7.AP.PD.02 Incorporate existing code, media and libraries into original programs of increasing complexity, from secure sources, and give appropriate attribution. Annotation 7.AP.PD.02
8. AP.PD.02 Incorporate existing code, media, and libraries into original programs of increasing complexity, from secure sources, and give appropriate attribution. Annotation 8.AP.PD.02
Program Development (3)
K.AP.PD.03 Identify errors in an algorithm that includes sequencing and repeated procedures using a programming language or unplugged activity. Discuss how errors in the algorithm could be corrected. Annotation K.AP.PD.03
1.AP.PD.03 Identify and correct errors (debug) in programs which include sequencing and repetition to accomplish a task, through a variety of techniques and strategies that could include an unplugged activity (e.g., changing order or sequence, following steps, trial and error). Annotation 1.AP.PD.03
2.AP.PD.03 Develop and debug programs that include sequencing and repetition to accomplish a task, through the use of a programming language and/or unplugged activity. Annotation 2.AP.PD.03
3.AP.PD.03 Analyze and debug an existing program or algorithm that includes sequencing, repetition, and variables in a programming language. Annotation 3.AP.PD.03
4.AP.PD.03 Create and debug a program or algorithm that includes sequencing, repetition, and variables in a programming language. Annotation 4.AP.PD.03
5.AP.PD.03 Create, test, and debug a program that includes sequencing, repetition, and variables in a programming language to ensure its runs as intended. Annotation 5.AP.PD.03
6. AP.PD.03 Test and refine existing and original programs. Annotation 6.AP.PD.03
7. AP.PD.03 Test and refine existing and original programs using user input and secure software development guidance. Annotation 7.AP.PD.03
8. AP.PD.03 Develop a method or implement an existing method to systematically test and refine existing and original programs using user input and secure software development guidance. Annotation 8.AP.PD.03
Program Development (4)
K.AP.PD.04 Use correct terminology (e.g., first, second, etc.) in the development of an algorithm to solve a simple problem. Annotation K.AP.PD.04
1.AP.PD.04 Use correct terminology (e.g., beginning, middle, end, etc.) and explain choices made during the development of an algorithm and/or program to solve a simple problem. Annotation 1.AP.PD.04
2.AP.PD.04 Use correct terminology (e.g., debug, program input/output, code, etc.) to explain the development of a program to solve a problem in an unplugged activity, hands-on manipulative, or programming language. Annotation 2.AP.PD.04
3.AP.PD.04 Communicate and explain program development to peers and adults using comments, presentations, and demonstrations. Annotation 3.AP.PD.04
4.AP.PD.04 Communicate and explain program development to peers and adults using comments, presentations, and demonstrations. Annotation 4.AP.PD.04
5.AP.PD.04 Communicate and explain program development to peers and adults using comments, presentations, and demonstrations. Annotation 5.AP.PD.04
6. AP.PD.04 Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts. Annotation 6.AP.PD.04
7. AP.PD.04 Explain how effective communication between participants is required for successful collaboration when developing computational artifacts. Annotation 7.AP.PD.04
8. AP.PD.04 Evaluate communication between participants to determine best practices in collaboration when developing computational artifacts. Annotation 8.AP.PD.04
Program Development (5)
Not addressed at grades K-5.
6. AP.PD.05 Document programs in order to make them easier to understand, test, and debug. Annotation 6.AP.PD.05
7. AP.PD.05 Document complex programs in order to make them easier to understand, test, and debug. Annotation 7.AP.PD.05
8. AP.PD.05 Document complex programs, using multiple methods, in order to make them easier to understand, test, and debug. Annotation 8.AP.PD.05