Students will begin using Evaluation Blocks to explore the concept of math …
Students will begin using Evaluation Blocks to explore the concept of math as a language, and more specifically, a programming language. By composing arithmetic expressions with Evaluation Blocks, students will be able to visualize how expressions follow the order of operations.
Using the Design Recipe, students will work through a series of word …
Using the Design Recipe, students will work through a series of word problems about calculating the height of a rocket after a given number of seconds from launch. The functions they write will be used to animate the rocket launch.
To compute more than just numbers, students will need to learn about …
To compute more than just numbers, students will need to learn about two new data types, Strings (any string of alphanumeric characters) and Images. Using these new data types, we'll compose programs that produce and manipulate images.
Contracts provide a way for students to better understand and discuss functions. …
Contracts provide a way for students to better understand and discuss functions. Through this lesson, students will look at known functions and come up with the contracts that describe those functions.
In this activity, students will learn to define variables that can be …
In this activity, students will learn to define variables that can be used to reference values and expressions. Once defined, their variables can be used repeatedly throughout a program as substitutes for the original values or expressions.
In this lesson we will build on students' understanding variables by making …
In this lesson we will build on students' understanding variables by making functions that reduce the number of inputs required. These 'fast functions' allow students to practice using the Design Recipe to develop simple functions without the additional overhead of parsing a word problem.
In the past lessons students have defined Variables and written Fast Functions. …
In the past lessons students have defined Variables and written Fast Functions. In this stage, they will continue to explore function writing with ever increasing complexity.
In the last stage, students wrote some very simple functions - but …
In the last stage, students wrote some very simple functions - but more sophisticated functions demand a more thoughtful approach. The Design Recipe is a structured approach to writing functions that includes writing a purpose statement and test cases to ensure that the function works as expected. Once students have mastered the Design Recipe process, they can apply it to any word problem they encounter.
In this stage students practice using the Design Recipe to write functions …
In this stage students practice using the Design Recipe to write functions which solve for word problems. Towards the end of the lesson students should be ready to begin using the Design Recipe on problems from your own math curriculum.
Determining when objects on the screen touch is an important aspect of …
Determining when objects on the screen touch is an important aspect of most games. In this lesson we'll look at how the Pythagorean Theorem and the Distance Formula can be used to measure the distance between two points on the plane, and then decide whether those two points (or game characters) are touching.
Students discuss the components of their favorite video games and discover that …
Students discuss the components of their favorite video games and discover that they can be reduced to a series of coordinates. They then explore coordinates in Cartesian space, identifying the coordinates for the characters in a game at various points in time. Once they are comfortable with coordinates, they brainstorm their own games and create sample coordinate lists for different points in time in their own game.
To finish up their video games, students will apply what they have …
To finish up their video games, students will apply what they have learned in the last few stages to write the final missing functions. We'll start by using booleans to check whether keys were pressed in order to move the player sprite, then move on to applying the Pythagorean Theorem to determine when sprites are touching.
Students get their first look at the inside of their own video …
Students get their first look at the inside of their own video games. They will start development by substituting in new Images, Strings, and Numbers for existing variables.
Returning to the Big Game we started in stage 7, students will …
Returning to the Big Game we started in stage 7, students will use the Design Recipe to develop functions that animate the Target and Danger sprites in their games.
Booleans are the fourth and final data type that students will learn …
Booleans are the fourth and final data type that students will learn about in this course. In this stage, students will learn about Boolean (true/false) values, and explore how they can be used to evaluate logical questions.
Using the same logic from the previous lesson, students will write code …
Using the same logic from the previous lesson, students will write code that checks whether their Target and Danger sprites have left the screen. If their function determines that a sprite is no longer visible on screen, it will be reset to the opposite side.
Currently, even when passing parameters to functions, our outputs follow a very …
Currently, even when passing parameters to functions, our outputs follow a very rigid pattern. Now, suppose we want parameters with some values to create outputs using one pattern, but other values to use a different pattern. This is where conditionals are needed. In this stage students will learn how conditional statements can create more flexible programs.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.