IN COLLECTION

ECT Lesson Plan: Algorithmic Thinking

Lesson plan at a glance...

Core subject(s)

Computer Science, Mathematics

Subject area(s)

Algorithms and Complexity

Suggested age

11 to 18 years old

Prerequisites

None

Time

Preparation: 10 to 20 minutes

Instruction: 35 minutes

Standards

Core Subject: CCSS Math

CS: CSTA, UK, Australia

In this lesson plan…

Lesson Overview

Students will explore algorithm design by creating oral algorithms, giving instructions for other students to follow to duplicate a model supplied by the teacher. Student-student interaction will foster community and help them analyze the effectiveness of their algorithms.


Materials and Equipment

  • For the teacher:
    • Required: plastic interlocking bricks (ex: LEGO®), cards, or tangrams

Preparation Tasks

 

Before students come to class: Using bricks, cards, tangrams or anything that can be arranged, create simple models to copy using the items; one for every four students.

10 to 20 minutes


The Lesson

Warm-up Activity: Journaling toward algorithmic thinking

10 minutes

Activity 1: Algorithmic thinking

20 minutes

Wrap-up Activity: Discussing algorithmic thinking

5 minutes

Warm-up Activity: Journaling toward algorithmic thinking (10 minutes)

Activity Overview: In this activity, students will identify the key concepts in algorithm design.


Activity:

Discussion: Students respond to the following prompt in small or large groups:


Think about brushing your teeth. What steps do you go through each time you brush? How would you give step-by-step instructions to someone about how to brush their teeth?


Activity 1: Algorithmic thinking (20 minutes)

Activity Overview: In this activity, students will use algorithm design to create an ordered series of instructions for solving a problem, and other students will follow the algorithm. Student-student interactions help them build peer-support networks and that foster a student-centered learning community.


Notes to the Teacher:

Refer to the the previously built models for this activity.


 


Activity:

  1. Divide students into groups of four and give each group a bag of bricks.
    1. Person 1 may look at everything but may only give directions.
    1. Person 2 and 3 may not look at the model but will build based upon instructions from person 1.
    2. Person 4 will count how many instructions are given until the model is complete and will write down instructions that were helpful or not helpful to the group.
  1. Hand the model to person 1 of each group and set the timer for no more than 5 minutes. Instruct students to copy the given model as accurately as possible.
  2. After the time is up, have students show their completed model, then share with the whole class.
  3. Have person 4 state the number of instructions given (even if the model wasn’t finished).
  4. If you have time and another model, have the students go through a second round.

Q1: What type of instructions worked best?


Q2: Why is this type of activity representative of humans working with computers?


Assessment:

A1: Simple, step-by-step, specific instructions.


A2: Computers can only understand the exact instructions they have been given, even if the instructions are flawed.


Wrap-up Activity: Discussing algorithmic thinking (5 minutes)

Activity Overview: In this activity, students will discuss the outcomes of the previous activities.


Activity:

Start by introducing the term “algorithm” and giving the definition (see Lesson Vocabulary below).

Discussion: Encourage your students to have a discussion about the previous activities.
How does the term “algorithm” fit into the equation?



Learning Objectives and Standards

Learning Objectives

Standards

LO1: Students will be able to write a series of instructions for creating a model.

Common Core

CCSS.MATH.PRACTICE.MP4: Model with mathematics.


Computer Science

AUSTRALIA 8.11 (Collaborating and managing): Plan and manage projects, including tasks, time and other resources required, considering safety and sustainability.


CSTA L1:6.CPP.5: Construct a program as a set of step-by-step instructions to be acted out (e.g., make peanut butter and jelly sandwich activity).


CSTA L2.CL.3: Collaborate with peers, experts and others using collaborative practices such as pair programming, working in project teams and participating in-group active learning activities.


UK 2.1: CS design, write and debug programs that accomplish specific goals, including controlling or simulating physical systems; solve problems by decomposing them into smaller parts.

LO2: Students will be able to articulate some important strategies and possible pitfalls in writing algorithms.

Common Core

CCSS.MATH.PRACTICE.MP3: Construct viable arguments and critique the reasoning of others.


CCSS.MATH.PRACTICE.MP2: Reason abstractly and quantitatively.


Computer Science

CSTA L2.CT.7: Represent data in a variety of ways including text, sounds, pictures and numbers.


UK 3.6: Understand how instructions are stored and executed within a computer system; understand how data of various types (including text, sounds and pictures) can be represented and manipulated digitally, in the form of binary digits.







Additional Information and Resources

Lesson Vocabulary

Term

Definition

For Additional Information

Algorithm

A series of instructions that can be repeated over and over with the same result for a given input (e.g. recipe, computer software, sheet of music notes)

http://en.wikipedia.org/wiki/Algorithm


Computational Thinking Concepts

Concept

Definition

Algorithm Design

Creating an ordered series of instructions for solving similar problems


Administrative Details

Contact info

For more info about Exploring Computational Thinking (ECT), visit the ECT website (g.co/exploringCT)

Credits

Developed by the Exploring Computational Thinking team at Google and reviewed by K-12 educators from around the world.

Last updated on

07/02/2015

Copyright info

Except as otherwise noted, the content of this document is licensed under the Creative Commons Attribution 4.0 International License, and code samples are licensed under the Apache 2.0 License.

 

 

Do NOT follow this link or you will be banned from the site!

Non-profit Tax ID # 203478467