Easily incorporate computational thinking into your curriculum with these classroom-ready lessons, examples, and programs. For more resources, including discussion forums and news, visit our ECT Discussion Forums.
Note: Lessons include complete teacher editions, student worksheets, and any applicable Python programs. Examples include short exercises from core subjects with key CT concepts to consider. Programs include Python examples and exercises for teachers to enhance their existing lessons. Math lessons, examples, and programs are based on the Common Core Standards, while science materials are aligned with the California K-12 Content Standards.
Core Subject: All
Subject: All
Grade: 6- 12
Type:Reference
Python Download and Install Instructions
View the Reference Sheet
Python works on any computer, and it's free! Follow these instructions to start using Python today!
Core Subject: All
Subject: All
Grade: 6- 12
Type:Reference
Python Quick Reference Sheet
View the Reference Sheet
Keep this sheet handy when you are working with Python. It contains all of the most often used functions and syntax from the Exploring Computational Thinking Lessons.
Core Subject: All
Subject: All
Grade: 6- 12
Type:Lesson
Modeling in Physics using Computational Thinking
View the Example
Students use modern technology to recreate and explore classic Physics experiments. Go beyond what Newton and Galileo dreamed was possible.
Modeling in Chemistry using Computational Thinking
View the Example
Chemistry explores the invisibile world of atoms. Give students the tools to visualize and model this world for deeper understanding.
Modeling in Biology using Computational Thinking
View the Example
Data and algorithms have transformed how we look at biology from the macro to the micro level. Modern day tools provide ways to find common patterns in all living things.
Core Subject: English-Language Arts
Subject: Language
Grade: 6- 12
Type:Lesson
Common Core : RL.8.5, L.9.4, RH.6.4
Finding Patterns in Spelling Errors and History
View the Lesson Plan
In this lesson, students will analyze spelling errors and large sets of data to find patterns, develop abstractions, and discover how large amounts of data can tell us much about our society.
Measuring the Complexity of a Function or Algorithm
View the Lesson Plan
Many of the mathematical problems students experience can be solved by a computer in less than a second. However, there is a set of problems that can take far longer, and still others exist that we aren’t sure how to solve at all using current methods. In this lesson, students will learn how to measure the complexity of a function/algorithm and understand how this applies to real world situations.
Core Subject: English-Language Arts
Subject: Language
Grade: 1- 10
Type:Lesson
Describing an Everyday Object
View the Lesson Plan
Using language to describe an object to someone else without the object's name. It's harder than you think.
Core Subject: English-Language Arts
Subject: Language
Grade: 5- 8
Type:Lesson
Writing a Story
View the Lesson Plan
Collaborate with others to build a story. Afterwards, find the "bugs" in the story and fix them to give the overall story a more logical flow.
Core Subject: English-Language Arts
Subject: Language
Grade: 3- 6
Type:Lesson
Ciphering a Sentence
View the Lesson Plan
Develop a cipher and encode a sentence and develop an algorithm for encoding and decoding.
Core Subject: All
Subject: All
Grade: 1- 6
Type:Lesson
Exploring Your Environment
View the Lesson Plan
Gather data about a place or environment, organize the data in a table and look for patterns.
Core Subject: All
Subject: All
Grade: 3- 6
Type:Lesson
Core Subject: All
Subject: All
Grade: 1- 6
Type:Lesson
Guessing Game
View the Lesson Plan
Play a guessing game with your friends and develop a process for efficient guessing.
Mean and Standard Deviation
View the Lesson Plan
This lesson will demonstrate how to use standard deviation to better understand a set of data. Students will use standard deviation to determine the general pattern/shape of a given set of data to draw more reliable conclusions.
Application and Modeling of Standard Deviation
View the Lesson Plan
When looking for patterns in data, it is helpful to look at the central tendency to see if patterns can be discovered. Students will be able to examine graphs of data using each of the measures of central tendency to determine when to use each in order to get a true overview of the data.
Core Subject: Science
Subject: Statistics and Probability
Grade: 9- 12
Type:Lesson
Common Core : S-CP
Bayes Theorem
View the Lesson Plan
Bayes’ Theorem is a powerful equation that allows us to make predictions on everything from the weather to the stock market. Once the pattern of Bayes’ Theorem and conditional logic is understood, students will be able to determine the actual probability of an event and see how others use Bayes’ Theorem for research. This lesson will examine two scenarios from which students can generalize to understand many everyday phenomena.
Using Data from Sensors
View the Lesson Plan
Sensors are a common way to collect information, whether it be through our own senses or with the aid of technology. Students will analyze sensor data and develop filtering algorithms for anomalies and outliers; they will then use these algorithms to make decisions on sensor data as it is being collected.
Core Subject: Science
Subject: Data Analysis
Grade: 6- 12
Type:Lesson
What is Data
View the Lesson Plan
Data is everywhere and students can use CT to understand, interpret, and draw conclusions.
Core Subject: Science
Subject: Data Analysis
Grade: 6- 12
Type:Lesson
Continuous vs Discrete Data
View the Lesson Plan
When working with Data, it is important to know whether the Data is continuous or discrete, as this will determine what calculations can be applied and what Information can be extracted from it. This lesson helps students to distinguish between continuous and discrete data and explain why that matters.
Core Subject: Science
Subject: Data Analysis
Grade: 6- 12
Type:Lesson
Working with Large Tables of Data
View the Lesson Plan
The world is full of Data and by using sensors, we can collect large amounts of Data easily. Once that Data is collected, the challenge is to interpret it by finding patterns and creating hypotheses about what the information could mean. In this lesson, students will work with large tables of GPS Data and sort, manipulate, and visualize the Data so it can be easily understood.
Core Subject: Science
Subject: Statistics and Probability
Grade: 8- 12
Type:Lesson
Functions and Algorithms
View the Lesson Plan
In computational thinking, the patterns we see in the world can be abstracted into functions. If we have a function we can give it the ability to loop quickly, use logic to make decisions and more. By developing algorithms into functions we are able to better understand and utilize the laws of our world.
Core Subject: Science
Subject: Statistics and Probability
Grade: 6- 12
Type:Lesson
Common Core : S-IC
Surveys and Estimating Large Quantities
View the Lesson Plan
In some situations, because there is so much data it can be difficult to get an exact count. We can use estimation to approximate the size of our data and know how much we can rely upon that data. By observing smaller sets and seeing patterns we can make general predictions and even create algorithms capable of making approximations.
Core Subject: Science
Subject: Statistics and Probability
Grade: 6- 12
Type:Lesson
Common Core : S-MD
Randomness in Stochastic Models
View the Lesson Plan
Most of the experiments students perform in class are deterministic. The expected outcome is the same every time. However, modern scientific research is often stochastic, that is, it depends on random variables and probability. In this lesson, students will be introduced to methods used to create random numbers as well as ways in which they can be used in scientific experiments.
Core Subject: Science
Subject: Statistics and Probability
Grade: 9- 12
Type:Lesson
Common Core : F-LE, S-IC
Stochastic and Deterministic Modeling
View the Lesson Plan
Computers provide humans with fast and repeatable processing. This aids us in creating algorithms that model real world phenomena. Models are either deterministic (the output is always the same) or stochastic (the output is based on random sampling and can vary). By modeling real phenomena using simulations, students can apply their understanding and modify it to make predictions.
Analyzing Discrete and Continuous Data in a Spreadsheet
View the Lesson Plan
Data can be found in every aspect of our lives. Because everybody is different, we use discrete and continuous data to determine recommendations for a nutritious diet. In this lesson, students will collect data in a spreadsheet and learn to use various functions and analysis tools to better see patterns in their eating habits.
Analyzing Discrete and Continuous Data in a Map
View the Lesson Plan
Data is more than just numbers, often the data can be found on a map. A map contains both discrete and continuous data. Using various tools, student will be able to analyze and calculate the amount of urban open space is available in their city.
Core Subject: Science
Subject: Statistics and Probability
Grade: 6- 12
Type:Lesson
Common Core : S-ID
Correlation vs Causation
View the Lesson Plan
One component of Computational Thinking is pattern recognition. While some patterns may imply causality, they may in fact be unrelated. In this lesson, students will test the strength of a correlation and discern whether or not a law or conclusion can be made based on that correlation. Students will see the threshold commonly accepted for correlating data and test their own assumptions about causation.
Fraction Addition and Common Denominators
View the Example
Students learn how to find a common denominator between two fractions and then add or subtract the fractions. They use visual representations to understand the decomposition of the larger of two fractions to find a common denominator with the smaller fraction.
Core Subject: Mathematics
Subject: Pre-Algebra
Grade: 4- 6
Type:Example
Common Core : 5.NF.4, 5.NF.6
Multiplication with Fractions
View the Example
Students learn to visualize the multiplication of fractions and identify patterns between the multiplicands and their product.
Ratios and Proportions
View the Example
Use a CT approach to develop an algorithm for answering questions involving ratios and proportions. Students will develop algorithms based on the patterns they identify after decomposing questions.
Multiplying by Numbers Between Zero and One
View the Example
Use a CT approach to teach students that when multiplying a positive number by a decimal between 0 and 1, the product is always less than the original number.
Dividing by Numbers Between Zero and One
View the Example
Use a CT approach to teach students that when dividing a positive number by a decimal between 0 and 1, the quotient is always greater than the original number.
Common Fractions and Equivalent Percentages
View the Example
Use a CT approach to teach students the conversion of common fractions into their equivalent percentages. Students identify patterns between fractions, decimals, and percents, and generalize these patterns.
Percent Change
View the Example
Use a CT approach to teach students to calculate percent change between any two numbers. Students will identify patterns in percent change and decompose an algorithm to help strengthen their understanding.
Scientific Notation
View the Example
Use a CT approach to identify patterns between the exponent, the number of places the decimal point moves, and the direction the decimal point moves when multiplying by powers of ten.
Long Multiplication on Two-Digit Numbers
View the Python Program (zip)
Use this program to apply students’ knowledge of how to perform long multiplication on two-digit numbers, for example, 23 x 46. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Fractions and Proportions
View the Python Program (zip)
Use this program to help students check whether two fractions are proportional. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Evaluating Expressions
View the Python Program (zip)
Use this program to illustrate to students how a basic calculator functions. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on. This program introduces Python’s eval function as a way of computing expressions containing variables a, b, and c when given values for each of these variables.
Midpoint Between Two Points
View the Python Program (zip)
Use this program to apply students’ knowledge of the midpoint formula and automatically calculate the midpoint between two points (x1, y1) and (x2, y2). Have students analyze or fill in parts of the program to help reinforce their understanding.
Complementary and Supplementary Angles
View the Python Program (zip)
Use this program to apply students’ knowledge of complements and supplements and automatically compute the complement and supplement of a given angle. Have students analyze or fill in parts of the program to reinforce their understanding.
Word Problems (populations)
View the Python Program (zip)
Use this program to help students determine how long it will take to reach a certain target population, given a starting population, birthrate, and death rate. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Average of Class Data
View the Example
Students learn how to calculate the average of a set of data using both Excel and Python with an emphasis on the algorithm used to perform the calculation.
Percentages
View the Example
Use a CT approach to develop an algorithm for calculating percentages using mental math.
Linear Association
View the Example
Students study the linear association between variables using two sets of data. They learn to read this data in a spreadsheet as well as in a graph, and to identify positive and negative linear association based on the shape of the graph.
Slope and Y-Intercept
View the Lesson Plan
Use a CT approach to teach students about the properties of slope and y-intercept. In this lesson, students will learn how to calculate the slope and y-intercept of a line that passes through a given set of points, and then use Python to solve various challenging slope and y-intercept exercises.
Work Problems (2 Workers)
View the Python Program (zip)
Use this program to help students conceptualize work problems by solving word problems with two people working together at different rates. Have students analyze, fill in parts of, or enhance the program to solve more sophisticated work problems.
Work Problems (3 Workers)
View the Python Program (zip)
Use this program to help students conceptualize work problems by solving word problems with three people working together at different rates. Have students analyze, fill in parts of, or enhance the program to solve more sophisticated work problems.
Word Problems
View the Python Program (zip)
Use this program to help student conceptualize word problems, specifically: A rock climber wants to know the height of a cliff. The climber measures the shadow of her friend, who is 5 feet tall and standing beside the cliff, and measures the shadow of the cliff. If the friends shadow is 4 feet long and the cliffs shadow is 60 feet long, how tall is the cliff?
Word Problems
View the Python Program (zip)
Use this program to help students conceptualize word problems, specifically: A basketball rim 10 ft high casts a shadow 15 ft long. At the same time, a nearby building casts a shadow that is 54 ft long. How tall is the building?
Word Problems
View the Python Program (zip)
Use this program to help students conceptualize word problems, specifically: Sam has a jar with 5 cups of fresh lemonade. Jack has some glasses which hold 1.5 cups each of liquid. How many glasses of lemonade can Jack serve of Sam’s lemonade?
Median of Latitude Data
View the Example
Students learn to identify the median of relatively large data sets. They decompose this process for data sets with odd and even numbers of entries, and write an algorithm for identifying the median in both cases.
Savings and Interest
View the Python Program (zip)
Use this program to help students understand how to calculate interest based on the savings amount, interest rate, and number of years of investing. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Word Problems
View the Python Program (zip)
Use this program to help students conceptualize word problems, specifically: Charisse is buying two different types of cereals from the bulk bins at the store. Granola costs $2.29 per pound, and muesli costs $3.75 per pound. She has $7.00. Use x as the amount of granola and y as the amount of muesli. How many pounds of granola can she buy if she buys 1.5 pounds of muesli?
Word Problems
View the Python Program (zip)
Use this program to help students conceptualize word problems, specifically: Shanti has just joined a DVD rental club. She pays a monthly membership fee of $4.95, and each DVD rental is $1.95. If Shanti’s budget for DVD rentals in a month is $42, how many DVDs can Shanti rent in her first month if she doesn’t want to go over her budget?
Word Problems
View the Python Program (zip)
Use this program to help students conceptualize word problems, specifically: There are 90 people in line at a theme park ride. Every 5 minutes, 40 people get on the ride and 63 join the line. Estimate how long it would take for 600 people to be in line.
T Tables for Simple Functions
View the Python Program (zip)
Use this program to help students compute the T table for a given function. Have students analyze, fill in parts of, or use the program to check solutions to exercises they are already working on.
Ratios
View the Python Program (zip)
Use this program to help students understand ratios by solving for x in the equation a/b = c/d, where x can be in any location in the two fractions. Have students analyze, fill in parts of, or use the program to check solutions to exercises they are already working on.
Quadratic Formula
View the Python Program (zip)
Use this program to apply students’ knowledge of the quadratic formula and automatically compute the quadratic formula given the values of a, b and c. Have students analyze, fill parts of, or use the program to check results to exercises they are already working on.
FOIL
View the Python Program (zip)
Use this program to apply students’ knowledge of FOIL on zero-variable or one-variable expressions and automatically solve various expressions. Have students analyze, fill in parts of, or use the program to check results to problems they are already working on.
Factoring Perfect Square Binomial Expressions
View the Python Program (zip)
Use this program to help students factor binomial expressions into the form (x+c)^2 if the expression fits the pattern. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Distance, Rate, Time
View the Python Program (zip)
Use this program to help students automatically compute distance, rate, or time, given two of the three variables. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Binomial Products
View the Python Program (zip)
Use this program to help students automatically calculate the binomial product, that is, (ax + b)(cx + d) = acx^2 + adx + bcx + bd. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Functions
View the Python Program (zip)
Use this program to help students see the connection between a mathematical function and a programmatic function by defining a function in Python and seeing what it means to pass a value to that function.
Properties of Quadratic Equations
View the Python Program (zip)
Use this program to apply students’ knowledge of quadratic equations to automatically complete the square of a quadratic equation and find the location of the vertex. Have students analyze or fill in parts of the program to reinforce their understanding.
Area of a Circle
View the Lesson Plan
Use a CT approach to teach students one derivation of the formula A = pi*r^2. In this lesson, students will complete Python programs that calculate the area of a circle as well as individual sectors.
Acute, Obtuse, and Right Triangles
View the Python Program (zip)
Use this program to help students precisely define the relationships between the angles for the different types of triangles (acute, obtuse, or right). Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Calculating Surface Area
View the Python Program (zip)
Use this program to apply students’ knowledge of surface area formulas to automatically calculate the surface areas of several geometric objects: cube, rectangular prism, cylinder, sphere. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Pythagorean Theorem
View the Python Program (zip)
Use this program to apply students’ knowledge of the Pythagorean Theorem to calculate a third side of a right triangle given the other two sides. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Core Subject: Mathematics
Subject: Geometry
Grade: 8- 10
Type:Program
Polygonal Formulas
View the Python Program (zip)
Use this program to apply students’ knowledge of the formulas related to polygons by displaying several results based on the number of sides of a polygon to show the differences in polygons. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Distance Between Two Points
View the Python Program (zip)
Use this program to apply students’ knowledge of the distance formula and automatically calculate the distance between two points (x1, y1) and (x2, y2). Have students analyze or fill in parts of the program to reinforce their understanding.
Area Calculations
View the Python Program (zip)
Use this program to apply students’ knowledge of area formulas and automatically compute the area of various geometric objects. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Core Subject: Mathematics
Subject: Statistics and Probability
Grade: 9- 12
Type:Example
Common Core : S-CP.9
Combinations with Repeats
View the Example
Use a CT approach to teach students how to compute the number of possible arrangements of a given number of digits in a given number of spaces. In this lesson students will identify patterns in relatively easy cases that lead them to an algorithm which applies to all cases.
Core Subject: Mathematics
Subject: Statistics and Probability
Grade: 9- 12
Type:Example
Common Core : S-CP.9
Factorials with Names
View the Example
In this example students investigate how many arrangements of the letters in a given name are possible. They identify patterns in the number of possible arrangements given an increasing number of letters, and then decompose the results to arrive at the factorial function.
Core Subject: Mathematics
Subject: Statistics and Probability
Grade: 9- 12
Type:Example
Common Core : S-ID-2
Sorting Data
View the Example
Students learn to sort data using spreadsheet functions and/or Python. They compare the algorithms used by both tools and then write their own algorithms for analyzing data with the mean, median, and mode.
Geometric Series
View the Lesson Plan
Use a CT approach to teach students the derivation of the formula for the sum of any geometric series. In this lesson, students will write algorithms that can be translated into Python code so that they can easily calculate the sum of several finite geometric series.
Fractional Exponents
View the Python Program (zip)
Use this program to help students understand fractional exponents by automatically computing one based on a given base and fractional exponent. Have students analyze or fill in parts of the program to reinforce their knowledge.
Substitution with Two Equations
View the Python Program (zip)
Use this program to apply students’ knowledge of how to substitute and solve for variables using two equations. The first equation can be any equation; the second must be of the form variable = ... where variable appears in the first equation. Have students analyze the program or predict the substitution given the two equations.
Pascal’s Triangle
View the Python Program (zip)
Use this program to help students learn about how Pascal’s Triangle is computed. Have students trace through the program, and learn more about nested for-loops and why they are needed in certain applications. This program may require extra guidance by the educator.
Degrees and Radians
View the Example
In this example students use basic patterns to label key points on the unit circle in terms of degrees, and then follow a similar process to relabel these points in terms of radians. Based on the patterns they use to count their way around the unit circle, students develop an algorithm to convert between degrees and radians.
Vertex of a Quadratic
View the Python Program (zip)
Use this program to apply students’ knowledge of how to calculate the vertex for any given quadratic and automatically calculate the vertex (h, k) for a given quadratic in the form of y = ax^2 + bx + c. Have students analyze or fill in parts of the program to reinforce their understanding.
Roots of an Equation
View the Python Program (zip)
Use the program to help students solve for the roots of an equation. Have students analyze or fill in parts of the program to reinforce their knowledge.
Conic Sections
View the Python Program (zip)
Use this program to illustrate how the coefficients of functions representing conic sections can be used to determine the type of conic section (circle, ellipse, hyperbola), and then display results based on that conic section. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on.
Combinations: n choose k
View the Python Program (zip)
Use this program to have students check solutions to exercises they are already working on related to combinations (n choose k). Students may also analyze or fill parts of the program to reinforce their understanding.
Matrix Multiplication
View the Python Program (zip)
Use this program to apply students’ knowledge of matrix multiplication by performing it on two randomly generated matrices. Have students analyze or fill in parts of the program to reinforce their understanding. This program is fairly sophisticated and may only work for students with prior Python experience.
Logarithm Notation
View the Python Program (zip)
Use this program to help students understand logarithm notation by automatically computing the result of a given base and exponent and displaying it in log notation. Have students analyze or fill in parts of the program to reinforce their knowledge.
Determinant of a 3x3 Matrix
View the Python Program (zip)
Use this program to help students find the determinant of a 3x3 matrix. Have students analyze or fill in parts of the program to reinforce their knowledge.
Determinant of a 2x2 Matrix
View the Python Program (zip)
Use this program to help students find the determinant of a 2x2 matrix. Have students analyze or fill in parts of the program to reinforce their knowledge.
Core Subject: Mathematics
Subject: Calculus
Grade: 11- 12
Type:Lesson
Functions and Derivatives
View the Lesson Plan
Use a CT approach to teach students how math functions relate to Python functions. In this lesson, students will identify patterns in Python code that lead them to building a program that uses the definition of derivative to approximate the derivative of any continuously differentiable function.
Core Subject: Mathematics
Subject: Calculus
Grade: 11- 12
Type:Program
Instantaneous Rate of Change
View the Python Program (zip)
Use this program to apply students’ knowledge of determining the instantaneous rate of change for a given function and automatically calculate it for a given function. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on. This program aligns with CA Math Standard: Calculus 4.2.
Core Subject: Mathematics
Subject: Calculus
Grade: 11- 12
Type:Program
Calculating Definite Integrals
View the Python Program (zip)
Use this program to apply students’ knowledge of calculating the definite integral for a given function and automatically calculate it for a specified function. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on. This program aligns with CA Math Standard: Calculus 13.0.
Core Subject: Mathematics
Subject: Calculus
Grade: 11- 12
Type:Program
Fundamental Theorem of Calculus
View the Python Program (zip)
Use this program to apply students’ knowledge of the Fundamental Theorem of Calculus for a given function and automatically calculate it for a specified function. Have students analyze, fill in parts of, or use the program to check results to exercises they are already working on. This program aligns with CA Math Standard: Calculus 15.0.
Core Subject: Science
Subject: Chemistry
Grade: 8- 10
Type:Example
Patterns in the Periodic Table
View the Example
In this example students study patterns in the organization of the periodic table supplemented by the use of spreadsheet functions. The spreadsheet functions presented can be used on any data set. This example aligns with eighth grade CA Math Standard 8PC7.
Core Subject: Science
Subject: Cell Biology
Grade: 8- 12
Type:Lesson
Inquiry and Observation
View the Lesson Plan
Use a CT approach to improve students’ ability to focus and observe. In this lesson, students will learn to use their observational skills to detect patterns that will help them decompose an everyday experience.
Core Subject: Science
Subject: Cell Biology
Grade: 8- 12
Type:Lesson
Filters
View the Lesson Plan
Use a CT approach to improve students' understanding of filters. In this lesson, they will find patterns in filters of all types to help them understand the function of filters in cell biology. Prior to this lesson, have students complete the related lesson titled Inquiry and Observation.
Core Subject: Science
Subject: Cell Biology
Grade: 8- 12
Type:Lesson
Filter Design and Construction
View the Lesson Plan
Use a CT approach to help students understand the movement of molecules across a cell membrane. In this lesson, students decompose their “molecules” to develop a design for their own “cell membranes” and then write an algorithm to describe them before building them. Prior to this lesson, have students complete the related lesson titled Filters.
Core Subject: Science
Subject: Earth Science
Grade: 9- 12
Type:Example
Energy Analysis
View the Example
In this example students collect data on energy production and consumption around the world and use spreadsheet functions to analyze the data. They learn how to display the results on a map of the world, creating a visual representation of the numbers they input into their spreadsheets. This example is most suitable for high school biology or earth science classes.
Data Aggregation and Decomposition (Advanced Python)
View the Lesson Plan
Use a CT approach to teach students how to analyze data and understand the world around them. In this lesson, students will use Python to read in data from a spreadsheet and manipulate a program to decompose this data and extract necessary information.
Data Aggregation and Decomposition (Excel)
View the Lesson Plan
Use a CT approach to teach students how to analyze data and understand the world around them. In this lesson, students will use Excel commands to decompose their class' data to more easily extract the required information.
Core Subject: Science
Subject: Data Analysis
Grade: 9- 12
Type:Program
Sorting
View the Python Program (zip)
Use this program to help students learn how to process data sets using a simple sorting algorithm. This program can also be used to illustrate how sorting might be done automatically by an application such as Excel.
Core Subject: Science
Subject: Data Analysis
Grade: 7- 12
Type:Example
Sorting the World's Cities with Excel
View the Example
Students learn how to use spreadsheet functions to sort and graph data. Once the data is sorted, they will begin to identify patterns and trends.
Core Subject: Science
Subject: Data Analysis
Grade: 9- 12
Type:Example
Sorting the World's Cities (Advanced Python)
View the Example
Students learn one method of reading data from a spreadsheet into a Python program and then learn how to sort it. When taught in conjunction with Sorting the World's Cities with Excel, students make the connection between writing a program and using a spreadsheet application.
Indefinite Articles
View the Example
In this example students investigate patterns in the usage of ‘a’ and ‘an’. After studying several examples, they explain when to use each of these indefinite particles. Students conclude by exploring two exceptions to the general rule.
Mystery Word X
View the Example
In this lesson students analyze the classification of nouns and verbs. They begin by considering nouns as “a person, place, or thing” and verbs as “action words”. Students then run a group of words through a series of "tests" and identify instances in which the these standard notions of nouns and verbs might lead to errors.
Present Participle
View the Example
In this example students investigate how the ending letters of a verb affect its spelling as we change tenses. Students begin by simply adding ‘ing’ to the end of verbs. By identifying patterns in the spelling of verbs for which this works and those for which it does not, students build a stronger algorithm for conjugating verbs.