Algorithm Discovery with Venn Diagrams

Shodor > Interactivate > Lessons > Algorithm Discovery with Venn Diagrams


This lesson is designed to help students learn about algorithms through Venn Diagrams and Box Plots. Students will develop algorithms for solving Venn Diagrams, collect data for each algorithm, and compare the efficiency of each algorithm, using box plots.


Upon completion of this lesson, students will:

  • understand the purpose and use of algorithms in problem-solving
  • understand what algorithms are most efficient for solving Venn Diagrams
  • understand an authentic application of box plots in data analysis

Standards Addressed:

Textbooks Aligned:

Teacher Preparation

Teachers will need:

  • computer with access to an internet browser
  • A copy of the worksheet for each student (optional)
  • pencil and paper

Key Terms

algorithmStep-by-step procedure by which an operation can be carried out
box plotAlso called box-and-whisker plot, this graph shows the distribution of data by dividing the data into four groups with the same number of data points in each group. The box contains the middle 50% of the data points and each of the two whiskers contain 25% of the data points.
Venn DiagramA diagram where sets are represented as simple geometric figures, with overlapping and similarity of sets represented by intersections and unions of the figures

Lesson Outline

  1. Focus and Review

    Open the Venn Diagram Shape Sorter applet, and project it for the whole class to view. Set the applet to Guess Mode, and work through a problem as a class:

    • Guide the students through the activity by instructing them on applet functionality.
    • Have students volunteer answers and tell you where to place different shapes in order to solve the problem.
    • Ask guided questions to help students start thinking about why they're selecting shapes to try.
    • After solving the problem, ask students to explain what approach they took in solving it.
    • Ask guided questions to help students start thinking about efficiency in solving problems

  2. Objectives

    Lead the class in a discussion on algorithms. Explain to the class that they will be finding algorithms to solve Venn Diagram problems, and collecting data and using box plots in order to determine an algorithm's efficiency.

  3. Teacher Input

  4. Guided Practice

    Explain how you'll use the box plot to compare different algorithms:

    • Students will develop an algorithm for solving a Venn Diagram
    • Students will solve several different problems using that method, recording how many shapes they had to try before being able to accurately guess the rules.
    • The class will come together and enter their data into a box plot, with each different algorithm as a category.

    If necessary, practice this process as a class until you're confident that students can do it on their own.

  5. Independent Practice

    Have students solve several problems with the Venn Diagram Shape Sorter.

    • Remind students to develop an algorithm for solving the problems.
    • Have students record how many shapes they try before being able to solve the problem each time.
    • If students are having trouble with the concept of algorithms, have them use the worksheet to guide their thinking.

  6. Closure

    As a class, enter data into the box plot, where each different algorithm is a different category in the box plot. Discuss the results:

    • Which algorithm is most efficient?
    • How can you tell?
    • How does the box plot help you see this?

Alternate Outline

If only one computer is available for the classroom, this lesson can be rearranged in the following way:

  • The teacher may do this activity as a demonstration. Choose the version (one circle, etc.) and allow students to decide individually, or in groups, which object to move onto the diagram and where to move it.
  • As a class, construct a box plot of the results of each algorithm. Then discuss conclusions they can draw from their results.

Suggested Follow-Up

a resource from CSERD, a pathway portal of NSDL NSDL CSERD