High School course

Programming 302

  • GRADES 7+
  • ADVANCED
  • WEB
  • 16 LESSONS
Slide: 1 of 26

Answer Key

Module 3: Create a Gravity Sling

Module 4: Add to the Gravity Sling

Module 5: Shoot the Aliens

Module 6: Create a Drawing Tool

Module 7: Create a Gravity Drawing Tool

Module 8: Quiz

1. Which block is used to start drawing?

  • {"func":"blockPenDown"}
  • {"func":"blockPenSetColor","values":[{"type":"color","value":"#00ff00"}]}
  • {"func":"registerFlagTrigger"}
  • {"type":"wrapper","func":"valueSensingMouseDown"}

2. Which block is used to clear pen drawings on the Stage?

  • {"func":"blockPenClear"}
  • {"func":"blockPenDown"}
  • {"func":"blockPenSetColor","values":[{"type":"color","value":"#00ff00"}]}
  • {"func":"blockPenChangeHue","values":[{"type":"number","value":"10"}]}

3. Which block is used to set the pen color?

  • {"func":"blockPenSetColor","values":[{"type":"color","value":"#ffffff"}]}
  • {"func":"blockPenUp"}
  • {"func":"blockPenDown"}
  • {"type":"wrapper","func":"valueSensingMouseDown"}

4. Which block is used to change the pen color by a specific value?

  • {"func":"blockPenChangeHue","values":[{"type":"number","value":"10"}]}
  • {"func":"blockPenChangeSize","values":[{"type":"number","value":"1"}]}
  • {"func":"blockSoundChangeTempo","values":[{"type":"number","value":"20"}]}
  • {"func":"blockLooksNextCostume"}

5. What does the {"func":"blockPenClear"} block do?

  • It clears all lines drawn either for that Actor, or on the Stage
  • It hides all of the Actors on the Stage
  • It clears all graphics effects on the Stage
  • It only hides the Actors that have 'Pen Up' or 'Pen Down' blocks

6. What would this code block draw? {"func":"blockPenDown","next":{"func":"blockMotionGoTo","values":[{"type":"number","value":"0"},{"type":"number","value":"0"}],"next":{"func":"blockMotionGoTo","values":[{"type":"number","value":"-100"},{"type":"number","value":"-200"}],"next":{"func":"blockMotionGoTo","values":[{"type":"number","value":"-100"},{"type":"number","value":"200"}],"next":{"func":"blockMotionGoTo","values":[{"type":"number","value":"0"},{"type":"number","value":"0"}]}}}}}

  • A triangle
  • A square
  • A rectangle
  • A circle

7. Which block is used to draw a line from the current Actor to the sling Actor?

  • {"func":"blockPenDrawLine","values":[{"type":"wrapper","func":"valueMotionXPosition"},{"type":"wrapper","func":"valueMotionYPosition"},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"x position"},{"type":"string","value":"sling"}]},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"y position"},{"type":"string","value":"sling"}]}]}
  • {"func":"blockPenDrawLine","values":[{"type":"wrapper","func":"valueMotionXPosition"},{"type":"wrapper","func":"valueMotionYPosition"},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"y position"},{"type":"string","value":"sling"}]},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"x position"},{"type":"string","value":"sling"}]}]}
  • {"func":"blockPenDrawLine","values":[{"type":"wrapper","func":"valueMotionYPosition"},{"type":"wrapper","func":"valueMotionXPosition"},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"y position"},{"type":"string","value":"sling"}]},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"x position"},{"type":"string","value":"sling"}]}]}
  • {"func":"blockPenDrawLine","values":[{"type":"wrapper","func":"valueMotionYPosition"},{"type":"wrapper","func":"valueMotionXPosition"},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"x position"},{"type":"string","value":"sling"}]},{"type":"wrapper","func":"valueSensingSpriteProperty","values":[{"type":"choice","value":"y position"},{"type":"string","value":"sling"}]}]}

8. What would this block draw? {"func":"blockPenDrawLine","values":[{"type":"wrapper","func":"valueSensingScreenLeft"},{"type":"number","value":"0"},{"type":"wrapper","func":"valueSensingScreenRight"},{"type":"number","value":"0"}]}

  • It would draw a horizontal line from the left to the right edge of the screen
  • It would draw a vertical line from the top to the bottom edge of the screen
  • It would draw a short line through the center of the screen
  • It would draw a diagonal line through the center of the screen

9. Which block allows you to stop drawing?

  • {"func":"blockPenDown"}
  • {"func":"blockPenUp"}
  • {"type":"wrapper","func":"valueSensingMouseDown"}
  • {"func":"blockLooksChangeSizeBy","values":[{"type":"number","value":"10"}]}

10. What is the size of the pen after running this code block? {"func":"blockPenSetSize","values":[{"type":"number","value":"40"}],"next":{"func":"blockPenChangeSize","values":[{"type":"number","value":"10"}]}}

  • 10
  • 40
  • 50
  • 30

11. True or false: Pen drawings will remain on the Stage until you use the Clear block. {"func":"blockPenClear"}

  • True
  • False

12. True or false: Colors can be represented by using sequences like #000000.

  • True
  • False

13. True or false: The 'Pen Down' block stops the Actor from drawing lines.

  • True
  • False

14. True or false: Any Actor can carry its own “pen” for using the pen drawing blocks. In other words, multiple Actors can carry different pens with different colors or sizes.

  • True
  • False

15. True or false: The higher up an Actor is, the greater the value of this code block. {"type":"wrapper","func":"valueSensingDistanceToSprite","values":[{"type":"string","value":"bottom edge"}]}

  • True
  • False

U.S. Standards

  • CCSS-Math: MP.1, MP.2, MP.7
  • CCSS-ELA: 6-8.RST.3, 6-8.RST.4, 6-8.RST.7, RI.9-10.3, RI.11-12.3
  • CSTA: 2-AP-10, 2-AP-12, 2-AP-13, 2-AP-15, 2-AP-16, 2-AP-17, 3A-AP-17, 3A-AP-22
  • CS CA: 6-8.AP.11, 6-8.AP.13, 6-8.AP.15, 6-8.AP.16, 6-8.AP.17, 9-12.AP.12, 9-12.AP.16
  • ISTE: 1.c, 1.d, 4.d, 5.c, 5.d, 6.b

U.K. Standards

Key stage 3
Pupils should be taught to:
  • design, use and evaluate computational abstractions that model the state and behaviour of real-world problems and physical systems
  • understand several key algorithms that reflect computational thinking [for example, ones for sorting and searching]; use logical reasoning to compare the utility of alternative algorithms for the same problem
  • undertake creative projects that involve selecting, using, and combining multiple applications, preferably across a range of devices, to achieve challenging goals, including collecting and analysing data and meeting the needs of known users
  • create, reuse, revise and repurpose digital artefacts for a given audience, with attention to trustworthiness, design and usability
  • understand a range of ways to use technology safely, respectfully, responsibly and securely, including protecting their online identity and privacy; recognise inappropriate content, contact and conduct, and know how to report concerns
Key stage 4
All pupils must have the opportunity to study aspects of information technology and computer science at sufficient depth to allow them to progress to higher levels of study or to a professional career. Pupils should be taught to:
  • develop their capability, creativity and knowledge in computer science, digital media and information technology
  • develop and apply their analytic, problem-solving, design, and computational thinking skills
  • understand how changes in technology affect safety, including new ways to protect their online privacy and identity, and how to report a range of concerns

Lesson 3: Line Animation

Course: | Web

  • Introduction
  • Concepts
  • Create a Gravity Sling
  • Add to the Gravity Sling
  • Shoot the Aliens
  • Create a Drawing Tool
  • Create a Gravity Drawing Tool
  • Quiz

Description

In this advanced lesson plan, students will be introduced to the physics library as they build Gravity Sling, a projectile game inspired by Angry Birds (TM). They define the behaviors of different kinds of projectiles and use physics commands such as impulse, gravity and collisions to build the game. Ninja Runner is an advanced physics platformer game with a boss fight sequence that challenges them to apply all the concepts and skills they have learned.

Students who successfully complete this lesson plan will demonstrate excellent understanding of a variety of programming concepts and computational thinking skills, and will be able to design and implement projects of moderate to advanced complexity.

Topics

  • List variables
  • Structured data
  • Loops
  • Advanced flow control
  • Physics attributes
  • Velocity
  • Impulses
  • Collisions
  • Sending and receiving messages
  • Parameters
  • Functions
  • Advanced conditional logic
  • Math
  • Boolean operators

What Students Learn

  • Build a complete projectile-based physics game
  • Build a complete platformer game using physics
  • Programmatically generate never-ending platforms
  • Program a hero with multiple actions and access them via keys
  • Use cloud variables and a list data structure to implement a leaderboard
  • Use variables to keep score and game speed
  • Program enemy A.I.

Technical Requirements

* Online courses require a modern desktop computer, laptop computer, Chromebook, or Netbook with Internet access and a Chrome (29+), Firefox (30+), Safari (7+), or Edge (20+) browser. No downloads required.