# Montana 9-12: CS.AP.9-12.1

## CodeHS Lessons

create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests;

 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 3.2 Variables 3.3 User Input 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 4.2 Graphics Challenges 5.1 Booleans 5.2 Logical Operators 5.3 Comparison Operators 5.4 If Statements 5.5 For Loops in JavaScript 5.6 General For Loops 5.7 For Loop Practice 5.9 While Loops 5.10 Loop and a Half 6.1 Control Structures Challenges
 Standard 1.4 Functions in Karel 1.5 The Main Function 1.10 If Statements and Conditionals 1.11 If/Else Statements 1.12 While Loops 1.14 Control Structures Example 1.15 More Karel Examples and Testing 2.1 Challenge Problems 3.2 Variables 3.3 User Input 3.4 Basic Math 6.1 Booleans 6.2 If/Else Statements 6.3 Logical Operators 6.4 Comparison Operators 6.6 While Loops 6.7 The Break Statement 6.9 For Loops 7.1 Control Structures Challenges
 Standard 23.5 Functions in Karel 23.11 If Statements 23.12 If/Else Statements 23.13 While Loops in Karel 23.14 Control Structures Example 23.16 Algorithms 23.17 Ultra Karel 23.18 Karel Challenges
 Standard 1.5 Functions in Karel 1.11 If Statements 1.12 If/Else Statements 1.13 While Loops in Karel 1.14 Control Structures Example 1.16 Algorithms 1.17 Ultra Karel 1.18 Karel Challenges 4.1 Booleans 4.2 Logical Operators 4.3 Comparison Operators 4.4 If Statements 4.6 For Loops in Python 4.7 General For Loops 4.8 For Loop Practice 4.10 While Loops 4.11 Loop and a Half
 Standard 9.2 Variables 9.3 User Input 9.4 Basic Math in JavaScript 9.5 Booleans 9.6 Logical Operators 9.7 Comparison Operators 9.8 If Statements 9.9 For Loops in JavaScript 9.10 For Loop Practice 9.12 While Loops 9.13 Loop and a Half
 Standard 21.1 Challenge Problems 23.1 Control Structures Challenges 22.1 Booleans 22.2 Logical Operators 22.3 Comparison Operators 22.4 If Statements 22.5 For Loops in JavaScript 22.6 General For Loops 22.7 For Loop Practice 22.9 While Loops 22.10 Loop and a Half
 Standard 10.5 Functions in Karel 10.11 If Statements 10.12 If/Else Statements 10.13 While Loops in Karel 10.14 Control Structures Example 10.16 Algorithms 10.17 Ultra Karel 10.18 Karel Challenges
 Standard 3.2 Variables 3.3 User Input 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 3.2 Variables 3.3 User Input 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 4.2 Graphics Challenges 6.1 Booleans 6.2 Logical Operators 6.3 Comparison Operators 6.4 If Statements 6.5 For Loops in JavaScript 6.6 General For Loops 6.7 For Loop Practice 6.9 While Loops 6.10 Loop and a Half 7.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 6.3 Variables 6.4 User Input 6.5 Basic Math in JavaScript 6.6 Using Graphics in JavaScript 7.1 Graphics Challenges 8.1 Booleans 8.2 Logical Operators 8.3 Comparison Operators 8.4 If Statements 8.5 For Loops in JavaScript 8.6 General For Loops 8.7 For Loop Practice 8.9 While Loops 8.10 Loop and a Half 9.1 Control Structures Challenges
 Standard 3.4 Functions in Karel 3.5 The Start Function 3.11 If Statements 3.12 If/Else Statements 3.13 While Loops in Karel 3.14 Control Structures Example 3.15 More Karel Examples and Testing 4.2 Challenge Problems 6.2 Variables 6.3 User Input 6.4 Basic Math in JavaScript 6.5 Using Graphics in JavaScript 7.1 Graphics Challenges 8.1 Booleans 8.2 Logical Operators 8.3 Comparison Operators 8.4 If Statements 8.5 For Loops in JavaScript 8.6 General For Loops 8.7 For Loop Practice 8.9 While Loops 8.10 Loop and a Half 9.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 6.2 Variables 6.3 User Input 6.4 Basic Math in JavaScript 6.5 Using Graphics in JavaScript 7.1 Graphics Challenges 9.1 Booleans 9.2 Logical Operators 9.3 Comparison Operators 9.4 If Statements 9.5 For Loops in JavaScript 9.6 General For Loops 9.7 For Loop Practice 9.9 While Loops 9.10 Loop and a Half 10.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 4.3 Variables 4.4 User Input 4.5 Basic Math in JavaScript 4.6 Using Graphics in JavaScript 14.1 Control Structures Challenges 13.1 Booleans 13.2 Logical Operators 13.3 Comparison Operators 13.4 If Statements 13.5 For Loops in JavaScript 13.6 General For Loops 13.7 For Loop Practice 13.9 While Loops 13.10 Loop and a Half
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 15.1 Control Structures Challenges 14.1 Booleans 14.2 Logical Operators 14.3 Comparison Operators 14.4 If Statements 14.5 For Loops in JavaScript 14.6 General For Loops 14.7 For Loop Practice 14.9 While Loops 14.10 Loop and a Half
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 8.3 Variables 8.4 User Input 8.5 Basic Math in JavaScript 8.6 Using Graphics in JavaScript 9.2 Graphics Challenges 10.1 Booleans 10.2 Logical Operators 10.3 Comparison Operators 10.4 If Statements 10.5 For Loops in JavaScript 10.6 General For Loops 10.7 For Loop Practice 10.9 While Loops 10.10 Loop and a Half 11.1 Control Structures Challenges
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 4.2 Variables 4.3 User Input 4.4 Basic Math in JavaScript 4.5 Using Graphics in JavaScript 5.2 Graphics Challenges 6.1 Booleans 6.2 Logical Operators 6.3 Comparison Operators 6.4 If Statements 6.5 For Loops in JavaScript 6.6 General For Loops 6.7 For Loop Practice 6.9 While Loops 6.10 Loop and a Half 7.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.2 Variables 2.3 User Input 2.4 Basic Math in JavaScript 2.5 Using Graphics in JavaScript
 Standard 2.2 Variables 2.3 User Input 2.4 Basic Math in JavaScript 2.5 Using Graphics in JavaScript
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 3.4 Functions in Karel 3.5 The Start Function 3.11 If Statements 3.12 If/Else Statements 3.13 While Loops in Karel 3.14 Control Structures Example 3.15 More Karel Examples and Testing 4.2 Challenge Problems 6.2 Variables 6.3 User Input 6.4 Basic Math in JavaScript 6.5 Using Graphics in JavaScript 7.1 Graphics Challenges 11.1 Control Structures Challenges 10.1 Booleans 10.2 Logical Operators 10.3 Comparison Operators 10.4 If Statements 10.5 For Loops in JavaScript 10.6 General For Loops 10.7 For Loop Practice 10.9 While Loops 10.10 Loop and a Half
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.10 If Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.13 Control Structures Example 2.14 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.10 If Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.13 Control Structures Example 2.14 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 2.4 Functions in Karel 2.5 The Start Function 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 2.15 More Karel Examples and Testing 3.2 Challenge Problems 5.2 Variables 5.3 User Input 5.4 Basic Math in JavaScript 5.5 Using Graphics in JavaScript 6.1 Graphics Challenges 7.1 Booleans 7.2 Logical Operators 7.3 Comparison Operators 7.4 If Statements 7.5 For Loops in JavaScript 7.6 General For Loops 7.7 For Loop Practice 7.8 Random Numbers 7.9 While Loops 7.10 Loop and a Half 8.1 Control Structures Challenges
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 3.2 Variables 3.3 User Input 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 4.2 Graphics Challenges 5.1 Booleans 5.2 Logical Operators 5.3 Comparison Operators 5.4 If Statements 5.5 For Loops in JavaScript 5.6 General For Loops 5.7 For Loop Practice 5.9 While Loops 5.10 Loop and a Half 6.1 Control Structures Challenges
 Standard 1.4 Functions in Karel 1.5 The Start Function 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 1.14 More Karel Examples and Testing 2.1 Challenge Problems 3.2 Variables 3.3 User Input 3.4 Basic Math in JavaScript 3.5 Using Graphics in JavaScript 4.2 Graphics Challenges 5.1 Booleans 5.2 Logical Operators 5.3 Comparison Operators 5.4 If Statements 5.5 For Loops in JavaScript 5.6 General For Loops 5.7 For Loop Practice 5.9 While Loops 5.10 Loop and a Half 6.1 Control Structures Challenges