Please enable JavaScript to use CodeHS

AP Computer Science A Labs - Outline

  1. Receipt Lab

    1. 1.1 Activity 1 - Basic Receipt

    2. Example 1.1.1 Basic Receipt
    3. Quiz 1.1.2 Activity 1 - Check for Understanding
    4. 1.2 Activity 2 - Enhanced Receipt

    5. Exercise 1.2.1 Enhanced Receipt
    6. Quiz 1.2.2 Activity 2 - Check for Understanding
    7. 1.3 Activity 3 - Including Random

    8. Exercise 1.3.1 Including Random
    9. Quiz 1.3.2 Activity 3 - Check for Understanding
    10. 1.4 Activity 4 - Interactive Receipt

    11. Exercise 1.4.1 Interactive Receipt
    12. Quiz 1.4.2 Activity 4 - Check for Understanding
    13. 1.5 Activity 5 - Design a Receipt

    14. Exercise 1.5.1 Design a Receipt
  2. Magpie 2.0 Lab

    1. 2.1 Activity 1 - Familiarizing Yourself with Chatbots

    2. Free Response 2.1.1 Familiarizing Yourself with Chatbots Part A
    3. Example 2.1.2 Familiarizing Yourself with Chatbots Part B
    4. 2.2 Activity 2 - Introduction to the Magpie Class

    5. Exercise 2.2.1 Introduction to the Magpie Class Part A
    6. Quiz 2.2.2 Activity 2A - Check for Understanding
    7. Exercise 2.2.3 Introduction to the Magpie Class Part B
    8. Exercise 2.2.4 Introduction to the Magpie Class Part C
    9. Quiz 2.2.5 Activity 2C - Check for Understanding
    10. 2.3 Activity 3 - Responses That Transform Statements

    11. Free Response 2.3.1 Responses That Transform Statements Part A
    12. Quiz 2.3.2 Activity 3A - Check for Understanding
    13. Exercise 2.3.3 Responses That Transform Statements Part B
    14. Exercise 2.3.4 Responses That Transform Statements Part C
    15. 2.4 Activity 4 - Find and Replace

    16. Exercise 2.4.1 Find and Replace Part A
    17. Exercise 2.4.2 Find and Replace Part B
    18. 2.5 Activity 5 - Arrays and Magpie

    19. Exercise 2.5.1 Arrays and Magpie Part A
    20. Quiz 2.5.2 Activity 5A - Check for Understanding
    21. Exercise 2.5.3 Arrays and Magpie Part B
    22. Quiz 2.5.4 Activity 5B - Check for Understanding
  3. Virtual Pet Lab

    1. 3.1 Activity 1 - Introduction to Virtual Pets

    2. Free Response 3.1.1 Introduction to Virtual Pets
    3. 3.2 Activity 2 - Designing a Class

    4. Free Response 3.2.1 Designing a Class
    5. Quiz 3.2.2 Activity 2 - Check for Understanding
    6. 3.3 Activity 3 - Implementing a Class

    7. Exercise 3.3.1 Implementing a Class Part A
    8. Quiz 3.3.2 Activity 3A - Check for Understanding
    9. Exercise 3.3.3 Implementing a Class Part B
    10. Exercise 3.3.4 Implementing a Class Part C
    11. 3.4 Activity 4 - Interacting Classes

    12. Exercise 3.4.1 Interacting Classes Part A
    13. Exercise 3.4.2 Interacting Classes Part B
    14. Exercise 3.4.3 Interacting Classes Part C
    15. 3.5 Activity 5 - Adding Features

    16. Exercise 3.5.1 Adding Features
    17. Quiz 3.5.2 Activity 5 - Check for Understanding
  4. Data Set Lab

    1. 4.1 Activity 1 – Data, Data, Data!

    2. Free Response 4.1.1 Data, Data, Data! Part A
    3. Quiz 4.1.2 Activity 1A - Check for Understanding
    4. Free Response 4.1.3 Data, Data, Data! Part B
    5. Quiz 4.1.4 Activity 1B - Check for Understanding
    6. Free Response 4.1.5 Data, Data, Data! Part C
    7. 4.2 Activity 2 – Designing and Implementing Cereal Class

    8. Exercise 4.2.1 Designing and Implementing Cereal Class Part A
    9. Exercise 4.2.2 Designing and Implementing Cereal Class Part B
    10. Quiz 4.2.3 Activity 2B - Check for Understanding
    11. 4.3 Activity 3 - Cereal Analysis

    12. Exercise 4.3.1 Cereal Analysis Part A
    13. Quiz 4.3.2 Activity 3A - Check for Understanding
    14. Exercise 4.3.3 Cereal Analysis Part B
    15. Exercise 4.3.4 Cereal Analysis Part C
    16. Exercise 4.3.5 Cereal Analysis Part D
    17. Exercise 4.3.6 (Extension) Cereal Analysis with JavaFX Part A
    18. Exercise 4.3.7 (Extension) Cereal Analysis with JavaFX Part B
    19. 4.4 Activity 4 - Personalized Data Analysis

    20. Free Response 4.4.1 Personalized Data Analysis Part A
    21. Free Response 4.4.2 Personalized Data Analysis Part B
    22. Exercise 4.4.3 Personalized Data Analysis -- Create Your Program
    23. Free Response 4.4.4 Personalized Data Analysis Part C
  5. 2048 Lab

    1. 5.1 Activity 1 - Exploring 2048

    2. Free Response 5.1.1 Exploring 2048
    3. Quiz 5.1.2 Activity 1 - Check for Understanding
    4. 5.2 Activity 2 – Adding First Two 2s

    5. Exercise 5.2.1 Adding First Two 2s
    6. Quiz 5.2.2 Activity 2 - Check for Understanding
    7. 5.3 Activity 3 – Sliding Tiles

    8. Exercise 5.3.1 Sliding Tiles Part A
    9. Exercise 5.3.2 Sliding Tiles Part B
    10. Quiz 5.3.3 Activity 3B - Check for Understanding
    11. Exercise 5.3.4 Sliding Tiles Part C
    12. Exercise 5.3.5 Sliding Tiles Part D
    13. Quiz 5.3.6 Activity 3D - Check for Understanding
    14. 5.4 Activity 4 – Merging Tiles

    15. Exercise 5.4.1 Merging Tiles Part A
    16. Quiz 5.4.2 Activity 4A - Check for Understanding
    17. Exercise 5.4.3 Merging Tiles Part B
    18. Exercise 5.4.4 Merging Tiles Part C
    19. Exercise 5.4.5 Merging Tiles Part D
    20. 5.5 Activity 5 – Game Over

    21. Exercise 5.5.1 Game Over Part A
    22. Exercise 5.5.2 Game Over Part B
  6. Digit Recognition Lab

    1. 6.1 Activity 1 - Measures of Similarity

    2. Free Response 6.1.1 Measures of Similarity
    3. 6.2 Activity 2 – Reading Digits from a File

    4. Blank 6.2.1 (Duplicate)
    5. 6.3 Activity 1 - Measures of Similarity (Duplicate)

    6. Blank 6.3.1 (Duplicate)
    7. 6.4 Activity 1 - Measures of Similarity (Duplicate)

    8. Blank 6.4.1 (Duplicate)
    9. 6.5 Activity 1 - Measures of Similarity (Duplicate)

    10. Blank 6.5.1 (Duplicate)
    11. 6.6 Activity 1 - Measures of Similarity (Duplicate)

    12. Blank 6.6.1 (Duplicate)
  7. Consumer Review Lab

    1. 7.1 Introduction

    2. Resource 7.1.1 Consumer Review Lab Activity Guide
    3. Exercise 7.1.2 Review
    4. Free Response 7.1.3 Review Free Response
    5. Check for Understanding 7.1.4 Check For Understanding
    6. 7.2 Sentiment Value and Star Ratings

    7. Exercise 7.2.1 Sentiment Value
    8. Free Response 7.2.2 Sentiment Value Free Response
    9. 7.3 Autogenerated Review

    10. Exercise 7.3.1 Autogenerate Review
    11. Free Response 7.3.2 Autogenerate Review Free Response
    12. 7.4 Create a Negative or Positive Review

    13. Exercise 7.4.1 Create a Negative or Positive Review
    14. Free Response 7.4.2 Create a Negative or Positive Review
    15. 7.5 Open Ended Activity!

    16. Exercise 7.5.1 Final Activity
    17. Free Response 7.5.2 Wrap Up
  8. Steganography Lab

    1. 8.1 Activity 1: Exploring Color

    2. Resource 8.1.1 Steganography Student Lab
    3. Free Response 8.1.2 Picture Lab A1: Digital Pictures and Color
    4. Free Response 8.1.3 Exploring Color
    5. Example 8.1.4 Clearing Bits
    6. Free Response 8.1.5 Clearing Bits Responses
    7. Exercise 8.1.6 Changing Colors
    8. Free Response 8.1.7 Changing Colors Response
    9. Exercise 8.1.8 Setting Bits
    10. 8.2 Activity 2: Hiding and Revealing a Picture

    11. Free Response 8.2.1 Hiding and Revealing
    12. Exercise 8.2.2 Hiding and Revealing
    13. 8.3 Activity 3: Identifying a Hidden Picture

    14. Exercise 8.3.1 Identifying a Hidden Picture
    15. Free Response 8.3.2 Identify a Hidden Picture: Check Your Understanding
    16. 8.4 Activity 4: Hiding and Revealing a Text Message

    17. Free Response 8.4.1 Hiding and Revealing a Text Message Intro
    18. Exercise 8.4.2 Hiding and Revealing a Text Message
    19. Free Response 8.4.3 Hiding and Revealing; Check your Understanding
    20. 8.5 Activity 5: Open Ended Project

    21. Exercise 8.5.1 Open Ended Project
  9. Celebrity Lab

    1. 9.1 Activity 1: Introduction to Celebrity

    2. Free Response 9.1.1 Introduction to Celebrity
    3. 9.2 Activity 2: The Celebrity Class: A Simple Version

    4. Free Response 9.2.1 Celebrity Class: A Simple Version
    5. Exercise 9.2.2 Celebrity Constructor
    6. 9.3 Activity 3: Putting it All Together

    7. Exercise 9.3.1 Set up Constructors
    8. Exercise 9.3.2 Setting up the Game
    9. Exercise 9.3.3 Complete Game Play Methods
    10. Free Response 9.3.4 Check Your Understanding
    11. 9.4 Activity 4: Extending the Celebrity Class

    12. Free Response 9.4.1 Extending the Celebrity Class
    13. Example 9.4.2 Literature Celebrity
    14. Exercise 9.4.3 Custom Celebrity
    15. Exercise 9.4.4 Updating CelebrityGame
    16. Exercise 9.4.5 Updating the GUI
    17. 9.5 Activity 5: Open Ended Activity

    18. Free Response 9.5.1 Open Ended Activity
  10. Elevens Lab

    1. 10.1 Elevens

    2. Connection 10.1.1 Elevens Activity Guide
    3. Exercise 10.1.2 Activity 1: Design and Create a Card Class
    4. Exercise 10.1.3 Activity 2: Initial Design of a Deck Class
    5. Free Response 10.1.4 Activity 2 Questions
    6. Exercise 10.1.5 Activity 3: Shuffling the Cards in a Deck
    7. Free Response 10.1.6 Activity 3 Questions
    8. Exercise 10.1.7 Activity 4: Adding a Shuffle Method to the Deck
    9. Exercise 10.1.8 Activity 6: Playing Elevens
    10. Free Response 10.1.9 Activity 6 Questions
    11. Example 10.1.10 Activity 7: Elevens Board Class Design
    12. Free Response 10.1.11 Activity 7 Questions
    13. Example 10.1.12 Activity 8: Using an Abstract Board Class
    14. Free Response 10.1.13 Activity 8 Questions
    15. Exercise 10.1.14 Activity 9: Implementing the Elevens Board
    16. Free Response 10.1.15 Activity 9 Questions
  11. Magpie Lab

    1. 11.1 Magpie Lab

    2. Connection 11.1.1 Magpie Student Guide
    3. Free Response 11.1.2 Activity 1: Chatbots
    4. Example 11.1.3 Activity 2: Introduction to Magpie
    5. Exercise 11.1.4 Activity 2: Modifying Magpie
    6. Free Response 11.1.5 Activity 2: Questions
    7. Exercise 11.1.6 Activity 3: Improving Keyword Detection
    8. Exercise 11.1.7 Activity 4: Responses that Transform Statements
  12. Picture Lab

    1. 12.1 Picture Lab

    2. Connection 12.1.1 Introduction & Student Guide
    3. Free Response 12.1.2 A1: Digital Pictures and Color
    4. Example 12.1.3 A2: Picking a Color
    5. Free Response 12.1.4 A2 Questions: Picking a Color
    6. Example 12.1.5 A3: Exploring a Picture
    7. Free Response 12.1.6 A3 Questions: Exploring a Picture
    8. Exercise 12.1.7 A4: Two-Dimensional Arrays in Java
    9. Free Response 12.1.8 A5: Interfaces
    10. Exercise 12.1.9 A5: Modifying a Picture
    11. Exercise 12.1.10 A6: Mirroring a Picture
    12. Exercise 12.1.11 A9: Edge Detection
  13. Battleship Lab

    1. 13.1 Battleship Demo

    2. Exercise 13.1.1 Battleship Part 1: The Ship Class
    3. Exercise 13.1.2 Battleship Part 2: The Location Class
    4. Exercise 13.1.3 Battleship Part 3: The Grid Class
    5. Exercise 13.1.4 Battleship Part 4: Adding a Ship to the Grid
    6. Exercise 13.1.5 Battleship Part 5: The Player Class
    7. Exercise 13.1.6 Battleship Part 6: The Battleship Class
    8. Exercise 13.1.7 Battleship Part 7: Finishing the Game
    9. Exercise 13.1.8 Battleship Extensions
  14. Pokemon Simulation Lab

    1. 14.1 Pokemon Demo

    2. Challenge 14.1.1 The Move Class
    3. Challenge 14.1.2 The Pokemon Class
    4. Challenge 14.1.3 Adding Pokemon Images
    5. Challenge 14.1.4 Pokemon can Attack!
    6. Challenge 14.1.5 The PokemonTrainer Class
    7. Challenge 14.1.6 The PokemonSimulation Class
    8. Challenge 14.1.7 Finishing the Battle
    9. Challenge 14.1.8 Adding the ComputerTrainer
    10. Challenge 14.1.9 Pokemon Extensions
    11. Badge 14.1.10 Pokemon Badge
  15. Blackjack Lab

    1. 15.1 Writing BlackJack

    2. Video 15.1.1 The Card Class
    3. Example 15.1.2 The Card Class
    4. Video 15.1.3 The Deck Class
    5. Example 15.1.4 The Deck Class
    6. Video 15.1.5 The Hand Class
    7. Example 15.1.6 The Hand Class
    8. Video 15.1.7 The Blackjack Class
    9. Example 15.1.8 The Blackjack Game
    10. Exercise 15.1.9 Improving Blackjack
  16. Mad Libs Lab

    1. 16.1 Mad Libs

    2. Video 16.1.1 Mad Libs Demo
    3. Challenge 16.1.2 Collecting the Placeholders
    4. Challenge 16.1.3 Getting User Input
    5. Challenge 16.1.4 Replacing a Placeholder
    6. Challenge 16.1.5 Generating the Mad Lib
    7. Challenge 16.1.6 Write your own Mad Lib!
    8. Challenge 16.1.7 Mad Lib Extensions
  17. (Remove?) GridWorld Lab

    1. 17.1 Lesson 1

    2. Example 17.1.1 GridWorld Starter Code