# FL 6-8: SC.68.CS-CP.2.4

## CodeHS Lessons

Develop problem solutions using a programming language, including all of the following: looping behavior, conditional statements, expressions, variables, and functions.

 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 3.2 Variables 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 7.1 Functions and Parameters 1 7.2 Functions and Parameters 2 7.3 Functions and Parameters 3 7.4 Functions and Return Values 1 7.5 Functions and Return Values 2 8.1 Functions Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Main Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements and Conditionals 1.11 If/Else Statements 1.12 While Loops 1.14 Control Structures Example 2.1 Challenge Problems 3.2 Variables 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 9.1 Functions Challenges
 Standard 2.4 For Loops 2.8 Functions 2.10 Top Down Design 2.11 Variables 2.12 User Input 2.13 Parameters 2.14 Using i in For Loops 2.15 Extended Loop Control 2.16 If Statements 2.17 If/ Else Statements 2.18 While Loops 2.19 Putting Together Control Structures 4.2 If Statements 5.1 While Loops 5.2 For Loops 5.4 Nested Control Structures 6.1 Functions 6.2 Functions and Parameters 6.4 Functions and Return Values 7.4 Strings and For Loops 8.3 For Loops and Lists
 Standard 33.4 Strings and For Loops
 Standard 1.1 Introduction to Programming With Karel 1.2 More Basic Karel 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.7 Commenting Your Code 1.8 Super Karel 1.9 For Loops 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 1.16 Karel Challenges 13.4 For Loops 13.8 Functions 13.10 Top Down Design 13.11 Variables 13.12 User Input 13.13 Parameters 13.14 Using i in For Loops 13.15 Extended Loop Control 13.16 If Statements 13.17 If/ Else Statements 13.19 Putting Together Control Structures 13.18 While Loops
 Standard 9.2 Variables 9.5 Booleans 9.6 Logical Operators 9.9 For Loops in JavaScript 9.10 For Loop Practice 9.12 While Loops 9.13 Loop and a Half 9.14 Functions and Parameters 1 9.15 Functions and Parameters 2 9.16 Functions and Return Values 1 9.17 Functions and Return Values 2 9.7 Comparison Operators 9.8 If Statements
 Standard 4.1 Programming Concepts 4.2 Programming with Karel 4.3 Looping 4.4 Branching 21.1 Challenge Problems 22.1 Booleans 22.2 Logical Operators 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 22.3 Comparison Operators 22.4 If Statements
 Standard 2.2 For Loops 3.3 Functions 3.5 Top Down Design 4.1 Variables 4.2 User Input 4.3 Parameters 4.4 Using i in For Loops 4.5 Extended Loop Control 5.1 If Statements 5.2 If/ Else Statements 5.3 While Loops 6.1 Putting Together Control Structures
 Standard 2.1 Introduction to Programming With Karel 2.2 More Basic Karel 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.7 Commenting Your Code 2.8 Super Karel 2.9 For Loops 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 2.16 Karel Challenges 3.4 For Loops 3.8 Functions 3.10 Top Down Design 3.11 Variables 3.12 User Input 3.13 Parameters 3.14 Using i in For Loops 3.15 Extended Loop Control 3.16 If Statements 3.17 If/ Else Statements 3.18 While Loops 3.19 Putting Together Control Structures
 Standard 2.1 Introduction to Programming With Karel 2.2 More Basic Karel 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.7 Commenting Your Code 2.8 Super Karel 2.9 For Loops 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 2.16 Karel Challenges 3.2 Variables 6.4 For Loops 6.8 Functions 6.10 Top Down Design 6.11 Variables 6.12 User Input 6.13 Parameters 6.14 Using i in For Loops 6.15 Extended Loop Control 6.16 If Statements 6.17 If/ Else Statements 6.19 Putting Together Control Structures 6.18 While Loops
 Standard 7.11 For Loops 7.14 Functions 7.15 Functions and Parameters 7.17 Functions and Return Values
 Standard 6.3 For Loops and Lists
 Standard 1.1 Introduction to Programming With Karel 1.2 More Basic Karel 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.7 Commenting Your Code 1.8 Super Karel 1.9 For Loops 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 1.16 Karel Challenges
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 4.2 If Statements 5.1 While Loops 5.2 For Loops 5.4 Nested Control Structures 6.1 Functions 6.2 Functions and Parameters 6.4 Functions and Return Values 7.1 Loops 7.2 If/Else Statements 7.3 Arithmetic, Comparison, and Logical Operators 7.4 Functions 8.4 Strings and For Loops 9.3 For Loops and Lists 12.1 Arduino Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 3.2 Variables 5.4 Variables 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 8.1 Functions and Parameters 1 8.2 Functions and Parameters 2 8.3 Functions and Parameters 3 8.4 Functions and Return Values 1 8.5 Functions and Return Values 2 9.1 Functions Challenges 10.1 Loops 10.2 If/Else Statements 10.3 Arithmetic, Comparison, and Logical Operators 10.4 Functions 14.1 Arduino Challenges
 Standard 2.2 For Loops 3.3 Functions 3.5 Top Down Design 4.1 Variables 4.2 User Input 4.3 Parameters 4.4 Using i in For Loops 4.5 Extended Loop Control 5.4 Variables 6.1 If Statements 6.2 If/ Else Statements 6.3 While Loops 7.1 For Loops 7.2 While Loops 7.3 Operators 7.4 If/Else Statements 7.5 Functions 8.1 Putting Together Control Structures 9.1 micro:bit Challenges
 Standard 2.4 Variables 7.1 For Loops 7.2 While Loops 7.3 Operators 7.4 If/Else Statements 7.5 Functions 10.1 micro:bit Challenges
 Standard 1.4 Variables 2.1 For Loops 2.2 While Loops 2.3 Operators 2.4 If/Else Statements 2.5 Functions 3.1 micro:bit Challenges
 Standard 1.4 Variables 2.1 Loops 2.2 If/Else Statements 2.3 Arithmetic, Comparison, and Logical Operators 2.4 Functions 3.1 Arduino Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 1.1 Introduction to Programming With Karel 1.2 More Basic Karel 1.3 Java Programs and the Run Method 1.4 Karel Can't Turn Right 1.5 Methods in Karel 1.9 For Loops 1.10 While Loops in Karel 1.11 If Statements 1.12 If/Else Statements 1.16 Karel Challenges 2.2 Variables and Types 2.6 Booleans 2.7 Logical Operators 2.8 Comparison Operators 2.9 For Loops 2.10 While Loops 2.11 If Statements 2.12 Loop-and-a-Half 2.13 Short-Circuit Evaluation
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 6.3 Variables 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 10.1 Functions and Parameters 1 10.2 Functions and Parameters 2 10.3 Functions and Parameters 3 10.4 Functions and Return Values 1 10.5 Functions and Return Values 2
 Standard 2.4 For Loops 2.8 Functions 2.10 Top Down Design 2.12 Variables 2.13 User Input 2.14 Parameters 2.16 Using i in For Loops 2.17 Extended Loop Control 2.18 If Statements 2.19 If/ Else Statements 2.20 While Loops 2.22 Putting Together Control Structures 6.2 If Statements 7.1 While Loops 7.2 For Loops 7.4 Nested Control Structures 8.1 Functions 8.2 Functions and Parameters 8.4 Functions and Return Values 9.4 Strings and For Loops 10.3 For Loops and Lists
 Standard 3.3 Karel Can't Turn Right 3.4 Functions in Karel 3.5 The Start Function 3.6 Top Down Design and Decomposition in Karel 3.10 For Loops 3.11 If Statements 3.12 If/Else Statements 3.13 While Loops in Karel 3.14 Control Structures Example 4.2 Challenge Problems 6.2 Variables 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 10.1 Functions and Parameters 1 10.2 Functions and Parameters 2 10.3 Functions and Parameters 3 10.4 Functions and Return Values 1 10.5 Functions and Return Values 2
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 6.2 Variables 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 11.1 Functions and Parameters 1 11.2 Functions and Parameters 2 11.3 Functions and Parameters 3 11.4 Functions and Return Values 1 11.5 Functions and Return Values 2
 Standard 3.4 For Loops 3.8 Functions 3.10 Top Down Design 3.11 Variables 3.12 User Input 3.13 Parameters 3.14 Using i in For Loops 3.15 Extended Loop Control 3.16 If Statements 3.17 If/ Else Statements 3.18 While Loops 3.19 Putting Together Control Structures
 Standard 6.1 Programming Concepts 6.2 Programming with Karel 6.3 Looping 6.4 Branching
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 4.3 Variables 13.1 Booleans 13.2 Logical Operators 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 13.3 Comparison Operators 13.4 If Statements
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 14.1 Booleans 14.2 Logical Operators 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 17.1 Functions and Parameters 1 17.2 Functions and Parameters 2 17.3 Functions and Parameters 3 17.4 Functions and Return Values 1 17.5 Functions and Return Values 2 14.3 Comparison Operators 14.4 If Statements
 Standard 4.2 If Statements 5.1 While Loops 5.2 For Loops 5.4 Nested Control Structures 6.1 Functions 6.2 Functions and Parameters 6.4 Functions and Return Values 8.4 Strings and For Loops 9.3 For Loops and Lists 18.4 For Loops 18.8 Functions 18.10 Top Down Design 18.11 Variables 18.12 User Input 18.13 Parameters 18.14 Using i in For Loops 18.15 Extended Loop Control 18.16 If Statements 18.17 If/ Else Statements 18.19 Putting Together Control Structures 18.18 While Loops
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 6.1 Introduction to Programming With Karel 6.2 More Basic Karel 6.3 Karel Can't Turn Right 6.4 Functions in Karel 6.5 The Start Function 6.6 Top Down Design and Decomposition in Karel 6.7 Commenting Your Code 6.8 Super Karel 6.9 For Loops 6.10 If Statements 6.11 If/Else Statements 6.12 While Loops in Karel 6.13 Control Structures Example 6.14 More Karel Examples and Testing 6.16 Karel Challenges 9.1 For Loops 9.2 While Loops 9.3 Operators 9.4 If/Else Statements 9.5 Functions 10.1 micro:bit Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 8.3 Variables 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 12.1 Functions and Parameters 1 12.2 Functions and Parameters 2 12.3 Functions and Parameters 3 12.4 Functions and Return Values 1 12.5 Functions and Return Values 2 13.1 Functions Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 4.2 Variables 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 8.1 Functions and Parameters 1 8.2 Functions and Parameters 2 8.3 Functions and Parameters 3 8.4 Functions and Return Values 1 8.5 Functions and Return Values 2 9.1 Functions Challenges
 Standard 23.1 Programming Concepts 23.2 Programming with Karel 23.3 Looping 23.4 Branching
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.2 Variables
 Standard 2.2 Variables
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 3.4 For Loops 3.8 Functions 3.10 Top Down Design 3.11 Variables 3.12 User Input 3.13 Parameters 3.14 Using i in For Loops 3.15 Extended Loop Control 3.16 If Statements 3.17 If/ Else Statements 3.18 While Loops 3.19 Putting Together Control Structures 8.1 Introduction to Programming With Karel 8.2 More Basic Karel 8.3 Karel Can't Turn Right 8.4 Functions in Karel 8.5 The Start Function 8.6 Top Down Design and Decomposition in Karel 8.7 Commenting Your Code 8.8 Super Karel 8.9 For Loops 8.10 If Statements 8.11 If/Else Statements 8.12 While Loops in Karel 8.13 Control Structures Example 8.14 More Karel Examples and Testing 8.16 Karel Challenges
 Standard 3.4 For Loops 3.8 Functions 3.10 Top Down Design 3.12 Variables 3.13 User Input 3.14 Parameters 3.15 Using i in For Loops 3.16 Extended Loop Control 3.17 If Statements 3.18 If/ Else Statements 3.19 While Loops 3.20 Putting Together Control Structures
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 3.3 Karel Can't Turn Right 3.4 Functions in Karel 3.5 The Start Function 3.6 Top Down Design and Decomposition in Karel 3.10 For Loops 3.11 If Statements 3.12 If/Else Statements 3.13 While Loops in Karel 3.14 Control Structures Example 4.2 Challenge Problems 6.2 Variables 10.1 Booleans 10.2 Logical Operators 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 24.1 Functions and Parameters 1 24.1 Functions and Parameters 1 24.2 Functions and Parameters 2 24.2 Functions and Parameters 2 24.3 Functions and Parameters 3 24.3 Functions and Parameters 3 24.4 Functions and Return Values 1 24.4 Functions and Return Values 1 24.5 Functions and Return Values 2 24.5 Functions and Return Values 2 10.3 Comparison Operators 10.4 If Statements
 Standard 16.1 Programming Concepts 16.2 Programming with Karel 16.3 Looping 16.4 Branching
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.9 For Loops 2.10 If Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.13 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 21.1 Programming Concepts 21.2 Programming with Karel 21.3 Looping 21.4 Branching
 Standard 2.2 For Loops 3.3 Functions 3.5 Top Down Design 4.2 Variables 4.3 User Input 4.4 Parameters 4.6 Using i in For Loops 4.7 Extended Loop Control 5.1 If Statements 5.2 If/ Else Statements 5.3 While Loops 6.1 Putting Together Control Structures
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.9 For Loops 2.10 If Statements 2.11 If/Else Statements 2.12 While Loops in Karel 2.13 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 5.1 Programming Concepts
 Standard 2.3 Karel Can't Turn Right 2.4 Functions in Karel 2.5 The Start Function 2.6 Top Down Design and Decomposition in Karel 2.10 For Loops 2.11 If Statements 2.12 If/Else Statements 2.13 While Loops in Karel 2.14 Control Structures Example 3.2 Challenge Problems 5.2 Variables 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 9.1 Functions and Parameters 1 9.2 Functions and Parameters 2 9.3 Functions and Parameters 3 9.4 Functions and Return Values 1 9.5 Functions and Return Values 2
 Standard 1.4 For Loops 1.8 Functions 1.10 Top Down Design 1.11 Variables 1.12 User Input 1.13 Parameters 1.14 Using i in For Loops 1.15 Extended Loop Control 1.16 If Statements 1.17 If/ Else Statements 1.18 While Loops 1.19 Putting Together Control Structures 3.4 Variables 11.1 Introduction to Programming With Karel 11.2 More Basic Karel 11.3 Karel Can't Turn Right 11.4 Functions in Karel 11.5 The Start Function 11.6 Top Down Design and Decomposition in Karel 11.7 Commenting Your Code 11.8 Super Karel 11.9 For Loops 11.10 If Statements 11.11 If/Else Statements 11.12 While Loops in Karel 11.13 Control Structures Example 11.14 More Karel Examples and Testing 11.16 Karel Challenges 14.1 For Loops 14.2 While Loops 14.3 Operators 14.4 If/Else Statements 14.5 Functions 15.1 micro:bit Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 3.2 Variables 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 7.1 Functions and Parameters 1 7.2 Functions and Parameters 2 7.3 Functions and Parameters 3 7.4 Functions and Return Values 1 7.5 Functions and Return Values 2 8.1 Functions Challenges
 Standard 1.3 Karel Can't Turn Right 1.4 Functions in Karel 1.5 The Start Function 1.6 Top Down Design and Decomposition in Karel 1.9 For Loops 1.10 If Statements 1.11 If/Else Statements 1.12 While Loops in Karel 1.13 Control Structures Example 2.1 Challenge Problems 3.2 Variables 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 7.1 Functions and Parameters 1 7.2 Functions and Parameters 2 7.3 Functions and Parameters 3 7.4 Functions and Return Values 1 7.5 Functions and Return Values 2 9.1 Functions Challenges 9.1 Functions Challenges