Presentation is loading. Please wait.

Presentation is loading. Please wait.

Arrays Chapter 8. Overview u General discussion u Variable arrays u Control arrays u Multi-dimensional variable arrays  Two-dimensional  Three-dimensional.

Similar presentations


Presentation on theme: "Arrays Chapter 8. Overview u General discussion u Variable arrays u Control arrays u Multi-dimensional variable arrays  Two-dimensional  Three-dimensional."— Presentation transcript:

1 Arrays Chapter 8

2 Overview u General discussion u Variable arrays u Control arrays u Multi-dimensional variable arrays  Two-dimensional  Three-dimensional u Parallel arrays u Dynamic arrays

3 Arrays u Often a set of objects or variables of the same type are used to hold related data  Prices of food items at a fast food restaurant  Scores on programming assignments u In the GPA calculator, rather than having five textboxes with different names to enter the grades, we might better describe the situation as an array of elements  Many data containers  One name

4 3 Variable Arrays u A variable like Stuff defines a data object into which a single quantity can be placed u A variable like Product defines a data object into which an array of information can be placed 2 1 0 Product Stuff

5 Declaring Variable Arrays u An array is declared using the following syntax: Dim ArrayName(LowerBound To UpperBound) as VariableType u The LowerBound of the array is the lowest index in the array, while the UpperBound is the highest index in the array

6 Variable Array – Example (1) u Arrays are useful for when there are many instances of similar data u Instead of ten integer variables holding ten values, a single array can handle all ten intd intcinte intj intf intb inta inti inth intg intArray

7 Variable Array – Example (2) u Each variable location in an array is called an element u Use Dim statement to define size and type Dim intArray(1 to 10) as Integer ‘creates the structure below u Treat as normal variables u Reference using subscripts: intArray(4) = 114 intArray 114

8 Variable Array – Example (3) u Arrays allow programmers to write code once, but have it applied to many different data elements u Compare adding all the integers stored in the variables… intd intcinte intj intf intb inta inti inth intg intArray intSum = inta + intb + intc _ + intd + inte + intf + intg _ + inth + inti + inj

9 Variable Array – Example (4) u Arrays allow programmers to write code once, but have it applied to many different data elements u …to adding all the elements of the array intd intcinte intj intf intb inta inti inth intg intArray For intI = 1 to 10 intSum = intSum + intArray(intI) Next intI

10 Control Arrays u VB allows the programmer to create arrays of controls on the form  Just as there are variable arrays, there may be arrays of objects, such as command buttons, labels, textboxes or picture boxes  An array of labels might be made with one label for each grade point  An array of textboxes might be made with one textbox for each grade, or credits u Characteristics  Name with subscripted elements .Index property is the subscript (Properties Window)

11 Control Arrays u Using the same procedure, you can make arrays of labels, or of pictures, or of check boxes, etc. u You can change the GPA calculator program to make arrays of grades, credits and grade points

12 Creating a Control Array – Example u Create an toolbox object, perhaps a command button, changing its (name) and caption.

13 Creating a Control Array – Example 1.Copy and paste the object (Ctrl-C)(Ctrl-V) or Edit/Copy then Edit/Paste 2.The message “Do you want to create a control array?” appears. Answer “yes” 3.Type Edit/Paste or (Ctrl-V) several more times to make an array of commands

14 Creating a Control Array – Example u The Properties Window shows it all. u Note that the 4th command created is shown as “cmdButn(3)”

15 Creating a Control Array – Example u Arrange the buttons on the form as desired u Double clicking on any one of them opens the code window

16 Creating a Control Array – Example u The event handler is a bit strange. There is now a “parameter” inside the normally blank parentheses: Private Sub cmdButn_Click(Index As Integer) lblOutput.Caption = "## " & Index & " ##" End Sub

17 Creating a Control Array – Example u Run the process u Click each button u Observe the effect

18 Creating Multi-dimensional variable Arrays u Arrays can come in different dimensions u You need to specify the lower and upper bounds for each dimension  Array name; Dimensions; Bounds; Type  An example of a two-dimensional array: Dim strName (1 to 3, 1 to 4) as String

19 Advanced Variable Arrays u Multi-dimensional arrays u Parallel arrays u Searching arrays u Dynamic Arrays

20 Creating Multi-dimensional variable Arrays u When accessing/storing elements in the array…  Any integer literal, variable or expression can be used to subscript  Must stay within the bounds  Must have the correct number of subscripts  If storing, must assign the correct type of data u Given: Dim strName (1 to 3, 1 to 4) as String  Is strName (0, 0) = “Jones” valid?  Is strName (2) = “Smith” valid?  Is strName (4, 3) = “Larry” valid?  Is strName(3, 4) = 1402 valid?

21 Two-dimensional variable Arrays u Two dimensional arrays  require two subscripts  elements are listed (row, column) u Example Dim intSales(1 to 3, 1 to 4) _ as Integer u What is intSales(2, 3)? 123123 1 2 3 4 1402 7532

22 Three-dimensional variable Arrays u Three dimensional arrays  require three subscripts (row, column, depth) u Example  Dim intSales (1 to 3, 1 to 4, 1 to 2) as Integer 1402 2134 4521 3425 So the number 2134 is found where? the number 4521 is ______ the number 1402 is ______ the number 3425 is ______

23 Parallel Arrays u Parallel arrays are used to hold related data with different types  Dim strName (1 to 5) as String  Dim intSales (1 to 5) as Integer  So, if we know that Smith is in strName(2), we also know his or her sales is in intSales(2) strName intSales Jones Smith Frank Able Zean 1402 2301 0231 6762 0199

24 Searching Arrays strTarget = "Q" intFound = 0 For intI = 1 to 10 If strTarget = strArray(intI) Then intFound = intI Exit For End If Next intI strArray A F S V W Q Z X Y L Searching implies looking for a target A simple sequential search looks through the array for the target

25 Dynamic Arrays u You can re-dimension an array at run-time u Rules for resizing arrays:  Use can empty dimension list: Dim intArray() as Integer  Use ReDim to assign dimensions: ReDim intArray (1 to intN, 1 to 2)  Use ReDim to change Bounds ReDim intArray (1 to (intN + 10), 1 to 3)  Use Preserve keyword to save data in array ReDim Preserve intArray(1 to intN, 1 to 5)


Download ppt "Arrays Chapter 8. Overview u General discussion u Variable arrays u Control arrays u Multi-dimensional variable arrays  Two-dimensional  Three-dimensional."

Similar presentations


Ads by Google