3. Writing functions/procedures. |
Can write the contract for a function. |
Can write simple functions given a contract. |
Can write complex functions given a contract and can write contracts for functions given a specified task. |
Can write contracts for complex functions, implement those functions and create effective test cases for them. |
5. Working with Boolean Values |
Understands the purpose of boolean values. |
Demonstrates the appropriate use of comparison operators. |
Demonstrates the appropriate use of comparison and boolean operators. |
Writes functions that take in boolean values and/or return boolean values. |
6. Using Conditional Statements |
Can trace the result of a single conditional statement. |
Can write conditional statements with one or two results. |
Can write nested conditional statements. |
Can use at least two different kinds of conditional statements, and understand the benefits of each. |
7. Using Randomness in Programs |
Can use one language provided random function. |
Can use a random function to generate integers or floating point values in a specified range. |
Can use random functions to produce random integers and floating point values within specified ranges. |
Can use random functions with conditional statements to write functions with randomly controlled outcomes. |
9. Data Structures |
Understands the difference between single values and data structures. |
Can describe how one data structure stores data. |
Can use a data structure to store multiple values in a program. |
Can use language provided features to effectively create and access data in a data structure. |
22. Using Variables |
Recognizes the difference between variables and literals |
Demonstrates ability to understand code which uses variables |
Correctly uses variables in programming |
Correctly uses the appropriate types of variables for different programming algorithms |