220 likes | 340 Views
CISC 110 Day 5. Arrays and Random Numbers. Outline. Data Structures Lists: One-dimensional arrays Array Declarations and Statements Initializing Arrays Size of Arrays length attribute Adding and Removing Elements Random Numbers. Data Structures.
E N D
CISC 110Day 5 Arrays and Random Numbers
Outline • Data Structures • Lists: One-dimensional arrays • Array Declarations and Statements • Initializing Arrays • Size of Arrays • length attribute • Adding and Removing Elements • Random Numbers
Data Structures Data Structuresare ways to organize groups of data elements. We have worked with individual variables and with properties of objects.
Data Structures Examples of Single Variables age name height cute 4 “Daniel” 38.5 true 4
Data Structures A String is actually an object “Daniel” characters 6 length name 5
Common Ways to Structure Data 1. List (in ActionScript: one-dimensional arrays) Example Lists: * Shopping List * Marks List * List of Student Names Physical Structure:
Common Ways to Structure Data 2. Table (in ActionScript: 2-dimensional arrays) Example Tables: * Periodic Table of Elements * Representation of a Chess Board Physical Structure:
Common Ways to Structure Data 3. Record (in ActionScript: objects) Example Records: * Student Record (will have name, address, phone, …) * MovieClip Record (will have length, width, rotation, alpha, …) No ParticularPhysical Structure
Common Ways to Structure Data 4. Tree( in A.S.: objects + references to objects) Example Trees : * Company Management Hierarchy * Family Tree Physical Structure:
Lists: One-dimensional Arrays A list is a sequence of items, in which each item has a position (i.e., an index) 0 1 2 3 4 5 6 7 names
1D Array Object Declaration Name of array Type Constructor method var salaries: Array = new Array( ); salaries [ 0 ] salaries [ 1 ] salaries [ 2 ] salaries [ 3 ] salaries [ 4 ] … salaries Note: The array is variable-sized. It starts with 0 elements.
Array Assignment Statements salaries[0] = 7; salaries [ 0 ] salaries [ 1 ] salaries [ 2 ] salaries [ 3 ] salaries [ 4 ] … salaries Nameof array Index Value of element
Example Array Statements base 30000 var base: int = 30000; salaries[ 2 ] = 45000; salaries[ 5 ] = base; salaries[ 6 ] = base + 6000; salaries[ 2 ] = salaries[ 2 ] + 4000; trace( salaries [ 2 ] ); Output: 49000 salaries [ 0 ] salaries [ 1 ] salaries [ 2 ] salaries [ 3 ] salaries [ 4 ] salaries [ 5 ] salaries [ 6 ] …
Array Constructor Shortcuts var numList : Array = new Array( 33, 2, 91, 12, 8 ); OR var numList : Array = [ 33, 2, 91, 12, 8 ]; numList[0] numList[1] numList[2] numList[3] numList[4]
Tracing an Array numList[0] numList[1] numList[2] numList[3] numList[4] trace(numList.toString( )); Output: 33, 2, 91, 12, 8
Array Objects have a LengthProperty numList[0] numList[1] numList[2] numList[3] numList[4] trace(numList.length); numList 5 numList.length Output:5
Adding Elements to an Array numList.push(11); numList.unshift(20); numList[0] numList[1] numList[2] numList[3] numList[4] numList[5] numList[6] numList[0] numList[1] numList[2] numList[3] numList[4]
Adding Elements to an Array numList[0] numList[1] numList[2] numList[3] numList[4] numList[5] numList[6] numList[7] numList[0] numList[1] numList[2] numList[3] numList[4] numList[5] numList[6] numList.splice(3, 0, 44);
Removing Elements from an Array numList[0] numList[1] numList[2] numList[3] numList[4] numList[5] var n1: int = numList.pop( ); var n2: int = numList.shift( ); // Now n1 = 11 // and n2 = 20 // and these elements are // removed from numList
Returning Elements from an Array var list: Array = numList.slice(3,5); // Now list = 91, 12, 8 // but numList is not changed numList[0] numList[1] numList[2] numList[3] numList[4] numList[5]
Random Numbers The random( ) method in the Math class returns a random value between 0 and .9999999999999999 Example: var rand: Number = Math.random( ); trace( "rand = " + rand );
Random Numbers To obtain a random integer between 0 and 20, multiply the result by 20 and then round the result, using the round method, also in the Math class. Example: var rand: Number = 20 * Math.random( ); rand = Math.round( rand ); trace( "rand = " + rand );