Unit 2: Algorithms and Programming


  • Programmers integrate algorithms and abstraction to create programs for creative purposes and to solve problems.

  • Using multiple program statements in a specified order, making decisions, and repeating the same process multiple times are the building blocks of programs.

  • Incorporating elements of abstraction—by breaking problems down into interacting pieces, each with their own purpose—makes writing complex programs easier.

  • Programmers need to think algorithmically and use abstraction to define and interpret processes that are used in a program.

Essential Questions

  • How can we store data in a program to solve problems?

  • What might happen if you completed the steps in your regular morning routine to get ready and go to school in a different order? How might the reordering affect the decisions you make each morning?

  • How do video games group the different actions for a player based on what key is pressed on the keyboard or controller? How do apps group different actions together based on user interaction, such as pressing buttons?

  • What types of problems can be solved more easily with a computer, and what types can be solved more easily without a computer? Why?