Download presentation
Presentation is loading. Please wait.
Published byBryan Welch Modified over 9 years ago
1
Variables and Functions Chapter 3 3-1
2
Variables Named storage location in computer’s memory Programs may need to store data when running o Stored in a variable Types of data that can be stored o Local variables o Parameter variables o Class-level variables o World-level variables 3-2
3
Variable Types Local variables o Belongs to a specific method o Only used in that method o Variables cease to exist when method stops Parameter variables o Holds argument that is passed to a called method Class-level variables o Variable that belong to a specific object World-level variables o Variable that belongs to the world 3-3
4
Creating Local Variables Local variables belong to a specific method (such as world.my first method) Create variable by clicking on create new variable in desired method Variables require 3 things o Name o Type o Initial value 3-4 name type value
5
Names, Types and Initial Values Variable Names Must be unique within the method Should be meaningful and reflect the variable’s purpose Named using camelCase Variable Types Numbers, Boolean, Objects, Other (such as String, Color, or Sound) Initial Value Value initially stored in the variable 3-5
6
Variables Tile appearance shows the type of variable Numbers, Boolean, Objects, String Variable declaration - creating a variable 3-6 variable area
7
Variable Assignment Variables have an initial value Initial value held until a different value is assigned New values can be assigned while the method is running o Use Set instructions o Done by dragging variable tile into Methods Editor 3-7
8
Checkpoint What is a variable? What are three things that must be specified when creating a new variable? In what part of the Method Editor do variable tiles appear? What do the characters 123 appearing on a variable tile tell you? How do you create a set instruction for a variable? 3-8
9
Function Asks a question o Checks a condition o Computes a value Used to get information about… o Properties of objects Is snowwoman's face red? o Relationship of one object to another What is distance between lunar robot and rock? o A current condition What keyboard key was pressed?
10
World Level Primitive Functions List of functions categories o Boolean logic o Math o Random o String o Ask user o Mouse o Time o Advanced math o Other 3-10
11
Value What a function returns after it o Asks question o Performs computation Type of value depends on kind of function o In lunar example What is distance of robot to rock? o Number value is expected to be returned Whole number ex: 3 meters Fractional value, ex: 1.2 meters
12
Types of Values Number o As in example Boolean o true, false String o “Slithy Toves” Object o snowman, helicopter Position in world o (0, 0, 0) – center of an Alice world
13
Asking User for Input World has three primitive functions that ask for user input Each function is displayed in a dialog box 3-13 Is it Yes or No?
14
Adding Question for Number
15
Class Primitive Object Functions Objects have different primitive functions from the world o Proximity o Size o Spatial relation o Point of view o Other Object primitive proximity functions
16
Using Function distance to Built-in distance to function o Determines distance from center of one object to center of another object o Better than guessing distance to object An Alice function is not a "stand-alone" instruction o It is nested within another instruction
17
Checkpoint What makes a function different from a method? How do you see a list of the functions an object has? What are the three primitive world functions that ask the user to input a value? What are some class level functions? What does the primitive distance to function do? 3-17
18
Creating Math Expressions Math Operators are used to create math expressions Math expressions perform a calculation and return a value Simple math expression o 12 + 2 o Value returned is 14 Operands appear to the right and left of an operator o Example with variables “payRate” and “hoursWorked” payRate * hoursWorked OperatorDescription +Addition -Subtraction *Multiplication /Division 3-18
19
Determining Distance Camera angle influences our perception of scene We need assistance with determining distance Example: How many meters does robot need to walk to reach rocks where alien is hiding? o Can use pointOfView property Primitive function
20
Avoiding Collisions When program is run, robot collides with rock o Distance between two objects is measured center- to-center One way to avoid a collision o Reduce calculated distance to object o Use expression to subtract small number (1 or 2) from distance
21
Expressions in Arguments Math expressions can be used in place of o Fixed value o To adjust value returned by function Click down arrow to get math operation o Adjusts distance to move to not collide with rock
22
Adding Math Expression in Alice 3-22
23
Subtracting Functions Two meters subtracted from distance is arbitrary To be more precise, subtract width of rock o But still not accurate Resulting expression subtracts value of one function from value of another function
24
More Precision The most accurate way to determine distance and to avoid collision o Add half width of both objects subtract from distance Be careful of excessive parentheses
25
Checkpoint What do the following operators do in most programming languages? o + - * / What does a math expression do? When you use the move to instruction to move one object to another object, why do they collide? o What are multiple methods you can use to avoid this? When can an object be driven into the ground or above the ground when using move to or move toward instructions? 3-25
26
Working with Strings and Text A string is a sequence of characters Strings represent o Names o Addresses o Messages o etc. 3-26
27
Asking User to Enter a String World’s ask user function can ask user to enter string Function returns the text that the user enters Example displays what user entered in dialog bubble 3-27 Defines string variable called name Asks user for name Stores in variable name Puts contents of name variable in bubble
28
Joining Strings String Concatenation o Joins string a with string b o Strings a and b are arguments o Does not change the values of strings a or b World function o a joined with b Drag a joined with b from string section in World function to where you want to join strings 3-28
29
Example of a joined with b 3-29 Hello joined with was only thing added
30
Converting Numbers to Strings Sometimes you need to display numbers to user Number needs to be converted to string first Use world functionWhat as a string
31
Example of what as a string 3-31
32
3D Text can be added to Alice worlds Found at end of the local gallery Pop up window appears after clicking on it Enter text and font style 3-32
33
Homework Read chapter 3 Do tutorials o Tutorial 3-1 Creating and using a variable, p 116 o Tutorial 3-2, Creating a set instruction, p. 118 o Tutorial 3-3, Calling an ask user function, p. 122 o Tutorial 3-4, Using a proximity function, p. 127 o Tutorial 3-5 Using math to avoid collisions, p 132 o Tutorial 3-6, Converting a number variable to a string, p. 141 Answer questions in handout Do lab assignments after handing in answered questions Due one week after assigned with 1 week grace
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.