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.
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?