SlideShare a Scribd company logo
1 of 86
Download to read offline
1
An introduction to
programming concepts with
Scratch
(in 5 hours + homework)
2
Who computes?
• Scientists
• Engineers
• Businessmen
• Social scientists
• Artists
• FBI agents
• Brain surgeons
• Gamers
• Grandparents
Everyone uses
information in
some way.
Computers do
information
processing.
3
What can we do with Scratch?
• Learn some computing concepts.
• Learn some practical algorithms.
• Use Scratch as computing tool.
• Have fun with Scratch creating stories, games,
art.
4
Part I: Looks and Motion
• Goals:
– Learn Scratch programming environment
– Learn the looks and motion menus
– Write a sequence of instructions
5
Start scratch and let’s go!
• Click on the cat icon
• Scratch programming
environment comes up
• We will first do simple things
6
Our Scratch environment
• Stage is at upper right (where actors act and
information is displayed)
• Sprite is another name for actor.
• Instruction menus/panel at left (instructions for
the actors)
• A script is another name for program or method;
a script tells the actor what to do.
• Programming area in center; here is where we
construct scripts for the sprites
7
We start with the cat sprite
We will learn to use many other
sprites later. For now we use the
cat as our only actor. We script the
BEHAVIOR of our cat.
8
The LOOKS menu
Has instructions for setting the color,
size, and visibility of a sprite.
Costumes will be used later.
9
The “hello” script (program)
• Choose the Looks menu
• Click on the “say hello” lego block
• Check your sprite behavior at the right
• Then click “say hello for 2 secs”
Your very first Scratch program!
10
Try some other looks operations
(click on menu items)
• Change color effect by 25
• Change color effect by 25 again
• Hide
• Show
• Change size by 10
• Change size by 10 again
• Set size to 100%
11
Let’s write a script to
• Say “hello” for 2 seconds
• Then change color by 25
• Then think “Hmm..” for 4 seconds
• Then change color by 75
• Then change size by 200
Drag each instruction from the menu to the center
script area. Connect them into a single block. Edit
the parameters to get the numbers we want.
12
Our script (program)
13
A sequence or block is a simple
script or program
• The first instruction is done first
• The second instruction is done second
• The last instruction is done last.
• (if any one instruction is done, then every on
of them is done)
14
The WAIT instruction
• WAIT is needed to slow down the acting so
we can see or hear it properly (computers
are too fast sometimes)
• Get the wait instruction from the CONTROL
menu. Ignore the other menu options for
now.
• Insert a wait in our looks script
15
3 second pause between changing
color and size
16
Student exercise: write a script to
do the following
• Double the size of the sprite
• Wait 2 seconds
• Change the color of the sprite to green
• Wait 4 seconds
• Change the whirl effect to 100
• Say “That’s all folks!”
17
The MOTION menu
How to locate and orient a sprite;
moving a sprite.
18
Position on the stage
• Using the Looks
menu, shrink our
cat to 25%.
• Click on the
Motion menu.
• Click to check the
box for x-position
and y-position
• Drag your cat
around and note
its x-y position.
19
Exercises: goto instruction
• In the Motion menu, drag the “goto xy”
instruction to the script panel.
• Edit the coordinates and click to see the
sprite’s position
• A) goto x=200, y=0
• B) goto x=-200, y=0
• C) goto x=200, y=-100
Where
does the
cat go?
20
The “glide-to” instruction
• Drag the “glide-to” instruction into your
script panel.
• Edit the coordinate values and click to
see where your sprites goes.
21
Exercise
• Create a script to glide the sprite along the
sides of a triangle. The first vertex of the
triangle is (-100, -100). The second vertex is
(200, -100). The third vertex is (50, 100). Make
sure you complete the triangle.
• Change the speed of gliding and run again.
22
Angles and directions
Making your sprite go
this way and that way
23
Exercise Script
• Start at ( -100, 100 )
• Move 200 steps
• Turn right 90 degrees
• Move 200 steps
• Turn right 90 degrees
• Move 200 steps
• Turn right 90 degrees
• Move 200 steps
Use waits if
needed to make
the motion look
smooth
24
Exercise/Homework Script
• Sprite starts at home base at x=-100; y=-50
• Sprite says “I hit the ball” for 2 seconds
• Sprite runs (east) 200 steps to 1st base
• Sprite changes color
• Sprite runs 200 steps to 2nd base (north: left turn
from 1st base)
• Sprite doubles size
• Sprite says “I hit a double” for 5 seconds
25
End of Part I: Outcomes
Student should be able to control the looks of a sprite
and its location on the stage. Students should be
able to construct sequences of instructions
controlling looks and location on the stage.
26
Part 2: Repetition and Variation
• Goals:
– Learn how to program with repetition
– Learn how to change costumes
– Learn to controll execution (behavior)
using special keys
27
The sneezing cat script
• We repeat 20 times
Say “AAAHHHH”
for a short time
Then grow the
cat 5 bigger
28
Exercise: bring the cat size
down to normal
Repeat 20 times
Briefly say
“CCHHEEEW”
Then shrink the
cat’s size by 5
Repeat N times
and repeat
forever are in the
Control menu
29
Exercise: Have the cat do a flip by
rotating 20 degrees 18 times.
• Repeat from the Control menu: set the
number of repetitions to 18
• Rotate from the Motion menu: set the
size of each small rotation to 20 degrees
30
Changing costumes
Another way to change the
appearance of a sprite.
31
Making a new costume
to animate the bat
1) Get bat2-a sprite from
the “sprite box”.
2) Click on sprite
3) Click on “Costumes”
4) Click on “Import”
5) Now get bat-2b sprite
from the sprite box
32
Use a loop to make the bat fly!
1) When and repeat from Control menu and 2) next costume from
Looks menu.
33
Changing coordinates
• We can randomly set the location of the bat
so it will “flutter”.
• Set X to a random number
• Set Y to a random number
• Move the bat to location (X,Y)
• Of course, the bat should remain on stage!
34
Using pick random
Click the stop sign at the stage upper right to stop the forever loop.
Do we need a wait in the loop? Try it to see the change in flying.
35
Controlling the bat’s direction
• Let’s create multiple scripts.
• Click space bar for random moves
• Click right arrow to move right
• Click left arrow to move left
• The bat will behave differently depending
upon which key is typed!
• (So, could a gamer catch the bat?)
36
Multiple interactive bat flight
3 different
behaviors
for the bat
37
Adding a background
• Click on the
Stage icon at
lower right
• Click on
Backgrounds
• Click on bat icon
(Sprite1)
• Click on Scripts
• FLY AGAIN!
38
Homework/Exercise:
• Add a behavior (script) to move the bat up
with the up arrow.
• Add a behavior to move the bat down with
the down arrow.
39
End of Part 2: outcomes
Student should be able to write a program
controlled by a loop, and execute a script by
clicking special keys. The student should also
know how to use “costumes” to change the
appearance of a sprite.
40
Part 3: Input/Output, Variables,
Simple computing
• Goals:
– Learn how the user and the program can
communicate
– Learn how to compute with formulas
– Computing an average, perimeter of a
geometric figure, etc
41
The SENSING menu
Getting information from the user
or some other machine
42
Asking the age of the user
• Program wants age of user (maybe to
set a level of difficulty in a game)
• Program asks user for age
• User types in age
• Program stores the answer in a variable
named “answer”
43
What is your age?
• Depends on who you are
• For one person it’s 12
• For another person it’s 27
• For yet another, it’s 19
• IT’S VARIABLE!
44
Use the SENSING menu
1) Ask the user for age; 2) user types in age;
3) result stored in “answer”
45
User types “13” and the script
stores the answer
“answer”
is a
Special
Scratch
variable
46
OUTPUT: Giving the user
information with say answer
Say is in Looks menu;
drag “answer” from
Sensing menu; click
47
Using the Variables menu
We can save an answer in our own
named variable;
Then we can program with many data
items using many variables
48
Making an “age variable”
1) Click Variables menu; 2) click “Make a variable”
2) Type in “age” and click OK
Do you want to
display for all
sprites or just one?
49
We have an “age variable”
Displaying variable “age”
Operations for “age”
50
We can join text and a number to
say things
Build this instruction from
the parts above it.
From Looks
From Operators
From Sensing
Make the join
51
Storing a value in a variable; then
saying it to the user
1) Set from Variables menu; 2) Say from Looks menu; 3) Join from the
Operators menu joins your text with the “answer”
52
Using variables in programs
• A script might have to remember information
• How far is the cat from the dog?
• How fast is the rocket moving?
• Where did the user click on the stage?
• What is my score in the game?
• What is the user’s skill level?
53
Computing C = A + B (1 of 3)
• Make 3 variables, A, B, and C
• Type in the values of A and B
• Set the value of C to the sum of A and B
54
Computing C = A + B (2 of 3)
• Make 3 variables, A, B, and C
• Type in the values of A and B
• Set the value of C to the sum of A and B
55
Computing C = A + B (3 of 3)
• Make 3 variables, A, B, and C
• Type in the values of A and B
• Set the value of C to the sum of A and B
Drag + operator
from Operators menu
From Variables menu
drag variables A and B
into the slots
56
Algorithm for computing the average
of two numbers
• Let the first number be A; say A=12
• And the second number be B; say B=15
• To compute the average _____________
• So the average of 12 and 15 = ________
57
Programming the average
• A is the first “variable”: A = _____
• B is the second “variable”: B = _____
• V is the third variable: V = _____
• Take the value of A, add the value of B, divide
this sum by 2, then set the value of V to this
answer.
• V = (A+B)/2 (how to do it in Scratch?)
58
Script from Variables and
Operators menus
Drag the variable names into the slots of the operators
A formula from the
Operators menu
Script not
yet
executed
59
After clicking to execute script
The variable V now stores the computed average of A and B
60
Exercise
• Put a Wait 5 secs in the script between the
two set operations for variable V
• Execute the script and observe the changes in
the value of V
61
Exercise
Change the values of A and B by editing the
script (keep the Wait);
Input the age of grandchild and age of
grandparent;
Click on your script to compute the average of
the new A and B
62
Homework/Exercise:
average program
• Modify the average program
• Ask the user for a value of A
• Ask the user for a value of B
• Compute V as the average
• Report the average to the user
• Run the program for different As and Bs
63
HW Exercises
• Average 3 numbers; say 12, 33, and 21
64
Computing perimeter of a
rectangle: algorithm
• Ask the user for length L
• Ask the user for width W
• Compute P = (L+W)*2
• Report P to the user
L=15
W =
10
P = (15+10)*2 = 50
example
65
Review:
Getting length from user
• Ask “What’s the length” and wait
• Set length to answer
Drag from Sensing menu
Create this variable
Drag from sensing
menu
66
Review: Reporting the value of a
variable to the user
• Say join “length =“ length for 2 sec
Looks menu
Operators menu
Drag length variable
from Variables menu
You type this in
67
Review: Program with user input
and output
68
HW Exercise: create the Scratch
program we designed
• Ask the user for length L
• Ask the user for width W
• Compute P = (L+W)*2
• Report P to the user
Show your program to your Grandparent.
69
End of Part 3: outcomes
Student should be able to write a program to
ask the user for data, compute using the
data, and report the answer to the user.
Students should be able to compute using
common formulas.
Part 4: working with sounds
and sprite communication
Part 4 goals
Learn how sprites can communicate
by sending messages
Learn how to play sounds and to
input your own voice
Communicating sprites: taking
turns by message passing
Get cat and dog sprites
Suppose cat speaks first
When finished, the cat can send a message to the dog
to speak
When the dog is finished, the dog can send a message
to the cat to speak
First behavior for the cat
After saying hello, cat sends a
message to dog (actually to all
sprites)
Dog is activated by hidog1
message
Dog send message back to cat
(and any other sprites)
Cat’s turn again after hicat2
message from the dog
Dog can have 2nd touching
behavior
Sprites can have many behaviors
Activated by clicking green flag
Activated by clicking the sprite
Activated by a key being pressed
Activated by a message from another sprite
Activated by touching another sprite
Using sounds
Sound library;
Speaking in the mike;
Importing music
Composing with drum beats
Jodi jumps on the drum
Story teller script Jodi’s script
Recording from a mike (or an iPod
or other music player)
1. Plug in microphone
2. Pick the speaker sprite
3. Click “Sounds”
4. Click “Record”
5. Click red button and speak
6. Click square button to stop
7. Click triangle to hear it
8. Click “OK” if it’s OK
9. Use name of sound in a play-sound
instruction
The Friends Story (play it)
Variations in stories
Have several scenes
Scenes change with messages or variables
Make characters move
Make characters hide or show
Behavior can change with variables, touching,
mousing.
Background music for each scene
Learning from examples
1. Click on the FILE tab
2. Click on the OPEN tab
3. Click on the Examples tab
4. Choose an example: for example,
try STORIES and MAD LIB
06/02/10
End of Part 4: outcomes
Students should be able to program
by passing messages. Students
should be able to program their
sprites to make sounds.

More Related Content

Similar to BGC2011Scratch-Rev1.pdf

Design & technology assess 2 pp
Design & technology assess 2 ppDesign & technology assess 2 pp
Design & technology assess 2 pp
Kathy Kypr
 

Similar to BGC2011Scratch-Rev1.pdf (20)

Flowcharting week 5 2019 2020
Flowcharting week 5  2019  2020Flowcharting week 5  2019  2020
Flowcharting week 5 2019 2020
 
Algorithm
AlgorithmAlgorithm
Algorithm
 
Lecture 3
Lecture 3Lecture 3
Lecture 3
 
Introduction to programming - class 2
Introduction to programming - class 2Introduction to programming - class 2
Introduction to programming - class 2
 
Design & technology assess 2 pp
Design & technology assess 2 ppDesign & technology assess 2 pp
Design & technology assess 2 pp
 
Lecture 2: C# Programming for VR application in Unity
Lecture 2: C# Programming for VR application in UnityLecture 2: C# Programming for VR application in Unity
Lecture 2: C# Programming for VR application in Unity
 
An introduction to Scratch
An introduction to ScratchAn introduction to Scratch
An introduction to Scratch
 
Maya
MayaMaya
Maya
 
Maya
MayaMaya
Maya
 
Makingagame in scratch
Makingagame in scratchMakingagame in scratch
Makingagame in scratch
 
88 brilliant little tips for Photoshop
88 brilliant little tips for Photoshop88 brilliant little tips for Photoshop
88 brilliant little tips for Photoshop
 
Lecture 1.pptx
Lecture 1.pptxLecture 1.pptx
Lecture 1.pptx
 
Pong on SCRATCH Directions
Pong on SCRATCH DirectionsPong on SCRATCH Directions
Pong on SCRATCH Directions
 
Pong on SCRATCH Directions
Pong on SCRATCH DirectionsPong on SCRATCH Directions
Pong on SCRATCH Directions
 
Sketchup basic course by Eng. Khalid A. Mter
Sketchup basic course by Eng. Khalid A. MterSketchup basic course by Eng. Khalid A. Mter
Sketchup basic course by Eng. Khalid A. Mter
 
Autodesk AutoCAD 2016
Autodesk AutoCAD 2016 Autodesk AutoCAD 2016
Autodesk AutoCAD 2016
 
Lab view introduction
Lab view introductionLab view introduction
Lab view introduction
 
Scratch Lesson 2
Scratch Lesson 2Scratch Lesson 2
Scratch Lesson 2
 
Get the Picture
Get the PictureGet the Picture
Get the Picture
 
1.Scratch 1.pptx
1.Scratch 1.pptx1.Scratch 1.pptx
1.Scratch 1.pptx
 

Recently uploaded

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Krashi Coaching
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Recently uploaded (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
IGNOU MSCCFT and PGDCFT Exam Question Pattern: MCFT003 Counselling and Family...
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 

BGC2011Scratch-Rev1.pdf

  • 1. 1 An introduction to programming concepts with Scratch (in 5 hours + homework)
  • 2. 2 Who computes? • Scientists • Engineers • Businessmen • Social scientists • Artists • FBI agents • Brain surgeons • Gamers • Grandparents Everyone uses information in some way. Computers do information processing.
  • 3. 3 What can we do with Scratch? • Learn some computing concepts. • Learn some practical algorithms. • Use Scratch as computing tool. • Have fun with Scratch creating stories, games, art.
  • 4. 4 Part I: Looks and Motion • Goals: – Learn Scratch programming environment – Learn the looks and motion menus – Write a sequence of instructions
  • 5. 5 Start scratch and let’s go! • Click on the cat icon • Scratch programming environment comes up • We will first do simple things
  • 6. 6 Our Scratch environment • Stage is at upper right (where actors act and information is displayed) • Sprite is another name for actor. • Instruction menus/panel at left (instructions for the actors) • A script is another name for program or method; a script tells the actor what to do. • Programming area in center; here is where we construct scripts for the sprites
  • 7. 7 We start with the cat sprite We will learn to use many other sprites later. For now we use the cat as our only actor. We script the BEHAVIOR of our cat.
  • 8. 8 The LOOKS menu Has instructions for setting the color, size, and visibility of a sprite. Costumes will be used later.
  • 9. 9 The “hello” script (program) • Choose the Looks menu • Click on the “say hello” lego block • Check your sprite behavior at the right • Then click “say hello for 2 secs” Your very first Scratch program!
  • 10. 10 Try some other looks operations (click on menu items) • Change color effect by 25 • Change color effect by 25 again • Hide • Show • Change size by 10 • Change size by 10 again • Set size to 100%
  • 11. 11 Let’s write a script to • Say “hello” for 2 seconds • Then change color by 25 • Then think “Hmm..” for 4 seconds • Then change color by 75 • Then change size by 200 Drag each instruction from the menu to the center script area. Connect them into a single block. Edit the parameters to get the numbers we want.
  • 13. 13 A sequence or block is a simple script or program • The first instruction is done first • The second instruction is done second • The last instruction is done last. • (if any one instruction is done, then every on of them is done)
  • 14. 14 The WAIT instruction • WAIT is needed to slow down the acting so we can see or hear it properly (computers are too fast sometimes) • Get the wait instruction from the CONTROL menu. Ignore the other menu options for now. • Insert a wait in our looks script
  • 15. 15 3 second pause between changing color and size
  • 16. 16 Student exercise: write a script to do the following • Double the size of the sprite • Wait 2 seconds • Change the color of the sprite to green • Wait 4 seconds • Change the whirl effect to 100 • Say “That’s all folks!”
  • 17. 17 The MOTION menu How to locate and orient a sprite; moving a sprite.
  • 18. 18 Position on the stage • Using the Looks menu, shrink our cat to 25%. • Click on the Motion menu. • Click to check the box for x-position and y-position • Drag your cat around and note its x-y position.
  • 19. 19 Exercises: goto instruction • In the Motion menu, drag the “goto xy” instruction to the script panel. • Edit the coordinates and click to see the sprite’s position • A) goto x=200, y=0 • B) goto x=-200, y=0 • C) goto x=200, y=-100 Where does the cat go?
  • 20. 20 The “glide-to” instruction • Drag the “glide-to” instruction into your script panel. • Edit the coordinate values and click to see where your sprites goes.
  • 21. 21 Exercise • Create a script to glide the sprite along the sides of a triangle. The first vertex of the triangle is (-100, -100). The second vertex is (200, -100). The third vertex is (50, 100). Make sure you complete the triangle. • Change the speed of gliding and run again.
  • 22. 22 Angles and directions Making your sprite go this way and that way
  • 23. 23 Exercise Script • Start at ( -100, 100 ) • Move 200 steps • Turn right 90 degrees • Move 200 steps • Turn right 90 degrees • Move 200 steps • Turn right 90 degrees • Move 200 steps Use waits if needed to make the motion look smooth
  • 24. 24 Exercise/Homework Script • Sprite starts at home base at x=-100; y=-50 • Sprite says “I hit the ball” for 2 seconds • Sprite runs (east) 200 steps to 1st base • Sprite changes color • Sprite runs 200 steps to 2nd base (north: left turn from 1st base) • Sprite doubles size • Sprite says “I hit a double” for 5 seconds
  • 25. 25 End of Part I: Outcomes Student should be able to control the looks of a sprite and its location on the stage. Students should be able to construct sequences of instructions controlling looks and location on the stage.
  • 26. 26 Part 2: Repetition and Variation • Goals: – Learn how to program with repetition – Learn how to change costumes – Learn to controll execution (behavior) using special keys
  • 27. 27 The sneezing cat script • We repeat 20 times Say “AAAHHHH” for a short time Then grow the cat 5 bigger
  • 28. 28 Exercise: bring the cat size down to normal Repeat 20 times Briefly say “CCHHEEEW” Then shrink the cat’s size by 5 Repeat N times and repeat forever are in the Control menu
  • 29. 29 Exercise: Have the cat do a flip by rotating 20 degrees 18 times. • Repeat from the Control menu: set the number of repetitions to 18 • Rotate from the Motion menu: set the size of each small rotation to 20 degrees
  • 30. 30 Changing costumes Another way to change the appearance of a sprite.
  • 31. 31 Making a new costume to animate the bat 1) Get bat2-a sprite from the “sprite box”. 2) Click on sprite 3) Click on “Costumes” 4) Click on “Import” 5) Now get bat-2b sprite from the sprite box
  • 32. 32 Use a loop to make the bat fly! 1) When and repeat from Control menu and 2) next costume from Looks menu.
  • 33. 33 Changing coordinates • We can randomly set the location of the bat so it will “flutter”. • Set X to a random number • Set Y to a random number • Move the bat to location (X,Y) • Of course, the bat should remain on stage!
  • 34. 34 Using pick random Click the stop sign at the stage upper right to stop the forever loop. Do we need a wait in the loop? Try it to see the change in flying.
  • 35. 35 Controlling the bat’s direction • Let’s create multiple scripts. • Click space bar for random moves • Click right arrow to move right • Click left arrow to move left • The bat will behave differently depending upon which key is typed! • (So, could a gamer catch the bat?)
  • 36. 36 Multiple interactive bat flight 3 different behaviors for the bat
  • 37. 37 Adding a background • Click on the Stage icon at lower right • Click on Backgrounds • Click on bat icon (Sprite1) • Click on Scripts • FLY AGAIN!
  • 38. 38 Homework/Exercise: • Add a behavior (script) to move the bat up with the up arrow. • Add a behavior to move the bat down with the down arrow.
  • 39. 39 End of Part 2: outcomes Student should be able to write a program controlled by a loop, and execute a script by clicking special keys. The student should also know how to use “costumes” to change the appearance of a sprite.
  • 40. 40 Part 3: Input/Output, Variables, Simple computing • Goals: – Learn how the user and the program can communicate – Learn how to compute with formulas – Computing an average, perimeter of a geometric figure, etc
  • 41. 41 The SENSING menu Getting information from the user or some other machine
  • 42. 42 Asking the age of the user • Program wants age of user (maybe to set a level of difficulty in a game) • Program asks user for age • User types in age • Program stores the answer in a variable named “answer”
  • 43. 43 What is your age? • Depends on who you are • For one person it’s 12 • For another person it’s 27 • For yet another, it’s 19 • IT’S VARIABLE!
  • 44. 44 Use the SENSING menu 1) Ask the user for age; 2) user types in age; 3) result stored in “answer”
  • 45. 45 User types “13” and the script stores the answer “answer” is a Special Scratch variable
  • 46. 46 OUTPUT: Giving the user information with say answer Say is in Looks menu; drag “answer” from Sensing menu; click
  • 47. 47 Using the Variables menu We can save an answer in our own named variable; Then we can program with many data items using many variables
  • 48. 48 Making an “age variable” 1) Click Variables menu; 2) click “Make a variable” 2) Type in “age” and click OK Do you want to display for all sprites or just one?
  • 49. 49 We have an “age variable” Displaying variable “age” Operations for “age”
  • 50. 50 We can join text and a number to say things Build this instruction from the parts above it. From Looks From Operators From Sensing Make the join
  • 51. 51 Storing a value in a variable; then saying it to the user 1) Set from Variables menu; 2) Say from Looks menu; 3) Join from the Operators menu joins your text with the “answer”
  • 52. 52 Using variables in programs • A script might have to remember information • How far is the cat from the dog? • How fast is the rocket moving? • Where did the user click on the stage? • What is my score in the game? • What is the user’s skill level?
  • 53. 53 Computing C = A + B (1 of 3) • Make 3 variables, A, B, and C • Type in the values of A and B • Set the value of C to the sum of A and B
  • 54. 54 Computing C = A + B (2 of 3) • Make 3 variables, A, B, and C • Type in the values of A and B • Set the value of C to the sum of A and B
  • 55. 55 Computing C = A + B (3 of 3) • Make 3 variables, A, B, and C • Type in the values of A and B • Set the value of C to the sum of A and B Drag + operator from Operators menu From Variables menu drag variables A and B into the slots
  • 56. 56 Algorithm for computing the average of two numbers • Let the first number be A; say A=12 • And the second number be B; say B=15 • To compute the average _____________ • So the average of 12 and 15 = ________
  • 57. 57 Programming the average • A is the first “variable”: A = _____ • B is the second “variable”: B = _____ • V is the third variable: V = _____ • Take the value of A, add the value of B, divide this sum by 2, then set the value of V to this answer. • V = (A+B)/2 (how to do it in Scratch?)
  • 58. 58 Script from Variables and Operators menus Drag the variable names into the slots of the operators A formula from the Operators menu Script not yet executed
  • 59. 59 After clicking to execute script The variable V now stores the computed average of A and B
  • 60. 60 Exercise • Put a Wait 5 secs in the script between the two set operations for variable V • Execute the script and observe the changes in the value of V
  • 61. 61 Exercise Change the values of A and B by editing the script (keep the Wait); Input the age of grandchild and age of grandparent; Click on your script to compute the average of the new A and B
  • 62. 62 Homework/Exercise: average program • Modify the average program • Ask the user for a value of A • Ask the user for a value of B • Compute V as the average • Report the average to the user • Run the program for different As and Bs
  • 63. 63 HW Exercises • Average 3 numbers; say 12, 33, and 21
  • 64. 64 Computing perimeter of a rectangle: algorithm • Ask the user for length L • Ask the user for width W • Compute P = (L+W)*2 • Report P to the user L=15 W = 10 P = (15+10)*2 = 50 example
  • 65. 65 Review: Getting length from user • Ask “What’s the length” and wait • Set length to answer Drag from Sensing menu Create this variable Drag from sensing menu
  • 66. 66 Review: Reporting the value of a variable to the user • Say join “length =“ length for 2 sec Looks menu Operators menu Drag length variable from Variables menu You type this in
  • 67. 67 Review: Program with user input and output
  • 68. 68 HW Exercise: create the Scratch program we designed • Ask the user for length L • Ask the user for width W • Compute P = (L+W)*2 • Report P to the user Show your program to your Grandparent.
  • 69. 69 End of Part 3: outcomes Student should be able to write a program to ask the user for data, compute using the data, and report the answer to the user. Students should be able to compute using common formulas.
  • 70. Part 4: working with sounds and sprite communication
  • 71. Part 4 goals Learn how sprites can communicate by sending messages Learn how to play sounds and to input your own voice
  • 72. Communicating sprites: taking turns by message passing Get cat and dog sprites Suppose cat speaks first When finished, the cat can send a message to the dog to speak When the dog is finished, the dog can send a message to the cat to speak
  • 73. First behavior for the cat After saying hello, cat sends a message to dog (actually to all sprites)
  • 74. Dog is activated by hidog1 message Dog send message back to cat (and any other sprites)
  • 75. Cat’s turn again after hicat2 message from the dog
  • 76. Dog can have 2nd touching behavior
  • 77. Sprites can have many behaviors Activated by clicking green flag Activated by clicking the sprite Activated by a key being pressed Activated by a message from another sprite Activated by touching another sprite
  • 78. Using sounds Sound library; Speaking in the mike; Importing music
  • 80.
  • 81. Jodi jumps on the drum Story teller script Jodi’s script
  • 82. Recording from a mike (or an iPod or other music player) 1. Plug in microphone 2. Pick the speaker sprite 3. Click “Sounds” 4. Click “Record” 5. Click red button and speak 6. Click square button to stop 7. Click triangle to hear it 8. Click “OK” if it’s OK 9. Use name of sound in a play-sound instruction
  • 83. The Friends Story (play it)
  • 84. Variations in stories Have several scenes Scenes change with messages or variables Make characters move Make characters hide or show Behavior can change with variables, touching, mousing. Background music for each scene
  • 85. Learning from examples 1. Click on the FILE tab 2. Click on the OPEN tab 3. Click on the Examples tab 4. Choose an example: for example, try STORIES and MAD LIB 06/02/10
  • 86. End of Part 4: outcomes Students should be able to program by passing messages. Students should be able to program their sprites to make sounds.