Len Kamerman Instructor CS-10001, Mohawk College, Fall 2010.

Presentation on theme: "Len Kamerman Instructor CS-10001, Mohawk College, Fall 2010."— Presentation transcript:

Len Kamerman Instructor CS-10001, Mohawk College, Fall 2010

What Is An Array? Using Arrays With GML When Are They Useful? A Sample Give Yourself Arrays (sample problem)

One array can hold MULTIPLE values An array is a COLLECTION of data items Most variables hold a SINGLE value 380380TrueTrue“Apple”“Apple” “Apple”“Apple” “Cherry”“Cherry” “Grape”“Grape” 380380 2727 6060 217217

Arrays follow variable naming rules But they also have an INDEX The INDEX refers to a particular value in the array “Apple”“Apple” “Cherry”“Cherry” “Grape”“Grape” FruitNames 012012 Indexes ->

If a regular variable is like a house… Then an array is like a condo… They all share one common address (variable name) but they each have their own apartment number (an INDEX)

NOTE: the first INDEX is 0, not 1 This is the case is most programming languages! “Apple”“Apple” “Cherry”“Cherry” “Grape”“Grape” FruitNames 012012 Indexes ->

In GML, you do not need to declare arrays An array in GML looks like this: VarName[index] VarName is the variable name index is an integer Examples: strSubject[0] = “History”; strSubject[1] = “Math”;

Create a script in GML Create an array with three values: strPop[0] = “Pepsi”; strPop[1] = “7-Up”; strPop[2] = “Dr. Pepper”; Print each to the screen with a message box: show_message(strPop[0]); show_message(strPop[1]); show_message(strPop[2]);

When you need to store many values var num1, num2, num3, num4, num5, num6, num7, num8, num9, num10, num11…… num[0] = 7; num[1] = 5; num[2] = 6; … num[10] = 4;

Process multiple values within a REPITITION structure (if you like loops, you’ll love arrays!) With the use of a counter, each iteration processes the next value x[0] = 1; x[1] = 7; x[2] = 4; for (i = 0; i < 3; i++) { total = total + x[i]; }

Using our same array of brands/kinds of pop: strPop[0] = “Pepsi”; strPop[1] = “7-Up”; strPop[2] = “Dr. Pepper”; for (i = 0; i < 3; i = i + 1) { show_message(strPop[i]); }

Have the user enter as many numbers as they like When they want to quit entering numbers, they enter -99 After they finish entering numbers: show them all the numbers they entered determine which number is the biggest and display it

var user_number, numbers, counter, biggest; user_number = get_integer(“Enter a number”, 0); biggest = 0; counter = 0; while (user_number != -99) { numbers[counter] = user_number; counter = counter + 1; user_number = get_integer(“Enter a number”, 0); } for (i = 0; I biggest) biggest = numbers[i]; } show_message(string(biggest) + “ was the largest number”);

Prompt the user for three numbers and store them in an array Use a loop to put the numbers together in a string E.g., if your numbers are 12, 57, and 42, combine them into a string to give “125742” Display this string in a message box

Write a script to ask the user for a lunch order Prompt them to enter each item, for example: hotdog chips Coke When they are done entering items, they should enter the word “nothing” Display each item in their lunch order in the reverse order they entered them