Lesson 8: Arrays

In computer science, an array is a series of places to store things. Earlier we learned how to use variables as a way to store information. Arrays store multiple values and they are accessed from a single object, the array itself. We’ll continue with the idea of storing information for later use, but in this lesson, we’ll use many values. You’ll learn the usefulness of arrays as a collection of related items. You’ll learn how to use the array operations to add and get items to arrange and remember.

* You can also watch this video here.

Lesson structure

  • Overview: Arrays
  • Unplugged Activity 1: Discussion of Arrays in real life
  • Unplugged Activity 2: Bubble Sort
  • Minecraft Activity 1: We built a zoo
  • Minecraft Activity 2: Warp Belt
  • Minecraft Activity 3: Blocks by ID
  • Project: Arrays for art
  • Assessment: Rubric
  • Standards: Listed

Lesson plan

  1. Overview: Arrays
  2. Unplugged: Arrays in real life
  3. Unplugged: Bubble Sort
  4. Activity: We built a zoo
  5. Activity: Warp Belt
  6. Activity: Blocks by ID
  7. Independent Project


The Flipgrid topic for the Arrays lesson: https://flipgrid.com/2d2d1d63

CSTA K-12 Computer Science Standards

Targeted standards for this lesson:

  • 3A-DA-09 - Translate between different bit representations of real-world phenomena, such as characters, numbers, and images.
  • 2-AP-10 - Use flowcharts and/or pseudocode to address complex problems as algorithms.
  • 2-AP-11 - Create clearly named variables that represent different data types and perform operations on their values.
  • 2-AP-12 - Design and iteratively develop programs that combine control structures, including nested loops and compound conditionals.
  • 2-AP-14 - Create procedures with parameters to organize code and make it easier to reuse.
  • K-12 Computer Science Framework Core concept: Control Structures
  • CT.L2-12 - Use abstraction to decompose a problem into sub problems
  • CPP.L1:6-05 - Construct a program as a set of step-by-step instructions to be acted out
  • CPP.L1:6-06 - Implement problem solutions using a block-based visual programming language
  • NGSS 3-5-ETS1-2 - Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem