Please enable JavaScript to use CodeHS

AP Computer Science Principles in Python

Description

In this lesson, students will use the grid coloring functionality of Karel to create a digital image.

Objective

Students will be able to:

  • Develop a program for creative expression, or to satisfy personal curiosity
  • Develop an algorithm and implement it using Karel’s JavaScript library of commands and conditions
  • Collaborate in the development of programs
  • Make a plan for their solution by breaking their problem down into solvable subproblems using Top Down Design
  • Develop abstractions to manage the complexity of their program (write several reusable functions that solve small subproblems)

Enduring Understandings

This lesson builds toward the following Enduring Understandings (EUs) and Learning Objectives (LOs). Students should understand that…

  • EU 1.1 Creative development can be an essential process for creating computational artifacts. (LO 1.1.1)
  • EU 1.2 Computing enables people to use creative development processes to create computational artifacts for creative expression or to solve a problem. (LOs 1.2.1, 1.2.3, 1.2.4, 1.2.5)
  • EU 2.2 Multiple levels of abstraction are used to write programs or create other computational artifacts. (LO 2.2.1)
  • EU 4.1 Algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages. (LOs 4.1.1, 4.1.2)
  • EU 5.1 Programs can be developed for creative expression, to satisfy personal curiosity, to create new knowledge, or to solve problems (to help people, organizations, or society). (LOs 5.1.1, 5.1.2, 5.1.3)
  • EU 5.3 Programming is facilitated by appropriate abstractions. (LO 5.3.1)