Download presentation
Presentation is loading. Please wait.
Published byAugustus Mitchell Modified over 9 years ago
1
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Alice Workshop Functions, Loops, and Parameters
2
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Where are we? Thus far, we have written object-level methods for the dragon flapWings takeOff fly Do in order dragon flies to princess princess climbs on dragon's back dragon and princess escape knight shakes his arm (and sword) in protest dragon takes off
3
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Next Now, the dragon must fly to the princess Break it down into simple steps: Do in order fly to the princess dragon turn into a position that will allow princess to climb on board
4
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater World-level method This method clearly involves two different objects: dragon princess We will write a world-level method rather than a object-level method. General rule of thumb: If more than one object is involved in a method, write the method as a world-level method.
5
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater turn to face
6
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Loop The fly method moves the dragon forward 1 meter. We want to call the fly method repeatedly to move the dragon to the princess. Alice has a Loop statement.
7
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Problem The problem is: How many times should the fly method be called? ?
8
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Functions Alice has several built-in distance functions, that can be used to determine the number of meters objects are from one another. In this example, the Loop should execute once for each meter of this distance.
9
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Behind the scenes To be truthful, Loop needs a whole number (e.g., 4) The distance in front of function returns a double number (e.g., 4.37 meters) Behind the scenes, Alice truncates the distance to a whole number
10
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Complete Methods
11
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Animation: Smooth, Continuous Movement For most purposes, execution of an instruction works best with a gentle slowdown in speed (toward the end of the duration) Successive repetitions, however, may have a smoother continuous motion if made to end abruptly
12
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Animation: Smooth, Continuous Movement For most purposes, execution of an instruction works best with a gentle slowdown in speed (toward the end of the duration) Successive repetitions, however, may have a smoother continuous motion if made to end abruptly
13
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Object-level method with parameters We could also write this method for the dragon object But it still involves two objects in the world dragon princess We must use a parameter in order to access the princess from the dragon method
14
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Create a object-level method Name it flyToPerson
15
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Parameters A parameter is a shared element that conveys information between one method and another A parameter, has a name, a value, and a type Type describes the kind of information that is shared Click on create new parameter button
16
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Parameters Name the object "who” (or something else appropriate) Select the Object type then click OK
17
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Use the parameter Turn the dragon to face …
18
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater What is a Variable? A variable is an element in a program to store values that are likely to change as the program executes Also useful for Naming values that may be abstract Allowing code to be more readable Decomposing a complex process into a series of simpler processes
19
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Create a variable in a method
20
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Like Parameters Variables have a name (distanceToWho) Variables have a type (Number)
21
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Parameters vs. Variables Both parameters and variables Have a name Have a type (which describes the kind of data being stored) Store values that can change as the program runs Parameters carry values from one method to another Variables belong to one particular method only (local)
22
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Using a variable Drag the variable tile into the code editor Select a value for the variable
23
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Using the function with parameter To set the value of the variable
24
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Using the variable in the loop
25
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Code
26
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Text For more information Functions and Expressions Chapters 3 and 6 Loop Chapters 3 and 7 (Section 1) Methods and Parameters Chapter 4 Variables 10-1
27
Copyright 2008 Wanda Dann, Steve Cooper, Don Slater Your turn… Write code to have the princess climb onto the dragon's back (not climb, actually – just move to the dragon) dragon and princess escape from the castle (use vehicle) Do in order princess climbs on dragon's back dragon and princess escape knight shakes his arm (and shield) in protest dragon takes off dragon flies to princess
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.