590 likes | 768 Views
Microsoft Visual Basic 2010: Reloaded Fourth Edition. Chapter Nine Arrays. Objectives. After studying this chapter, you should be able to: Declare and initialize a one-dimensional array Store data in a one-dimensional array Determine the number of array elements and the highest subscript
E N D
Microsoft Visual Basic 2010: ReloadedFourth Edition Chapter Nine Arrays
Objectives After studying this chapter, you should be able to: • Declare and initialize a one-dimensional array • Store data in a one-dimensional array • Determine the number of array elements and the highest subscript • Traverse a one-dimensional array • Code a loop using the For Each…Next statement • Compute the total and average of a one-dimensional array’s contents Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Objectives (cont'd.) • Find the highest value in a one-dimensional array • Associate a list box with a one-dimensional array • Use a one-dimensional array as an accumulator • Sort a one-dimensional array • Create and initialize a two-dimensional array • Store data in a two-dimensional array • Sum the values in a two-dimensional array • Search a two-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Arrays • Simple variable (or scalar variable): a variable that is unrelated to any other variable in memory • Array: • A group of variables with the same name and data type that are related in some way • Used to temporarily store related data in memory • Increases the efficiency of a program • Commonly used arrays: • One-dimensional • Two-dimensional Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays • One-dimensional array: • Can be viewed as a column of variables • Each variable in the array has the same name and data type • Subscript: • A unique number that identifies each variable in a one-dimensional array • Starts at 0 for first element in the array • Use array name and subscript to refer to each individual variable in the array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-1: Illustration of the naming convention for the one-dimensional sales array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays (cont'd.) • Element: an individual variable in the array • When an array is declared: • Must specify the data type, name, and highest subscript to be used • First element has a subscript of 0 • The array will contain one element more than the highest subscript because subscripts start at 0 Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-2: How to declare a one-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays (cont'd.) • Each element in the array is initialized if no values are provided • String array elements are initialized to the keyword Nothing • Numeric array elements are initialized to 0 • Boolean array elements are initialized to False • Date array elements are initialized to 12:00 AM January 1, 0001 Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays (cont'd.) • Initial values can be specified for array elements • Populating the array: assigning initial values to an array • List the values in a comma-separated list enclosed in curly braces ({}) • After declaration, can use an assignment statement to store a value in an array element • Length property: indicates number of elements • GetUpperBound method: returns the highest subscript Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-3: How to store data in a one-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays (cont'd.) Figure 9-4: How to use a one-dimensional array’s Length property Microsoft Visual Basic 2010: Reloaded, Fourth Edition
One-Dimensional Arrays (cont'd.) Figure 9-5: How to use a one-dimensional array’s GetUpperBound method Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Traversing a One-Dimensional Array • Traverse an array: look at each array element, one by one, from beginning to end of the array • Use a loop to traverse an array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-6: How to traverse a one-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
The For Each…Next Statement • For Each…Next statement: • Used to code a loop that processes each element in a group or array • Creates a variable used to represent each element in the group or array • Data type of the element must match the data type of the group Microsoft Visual Basic 2010: Reloaded, Fourth Edition
The For Each…Next Statement (cont'd.) Figure 9-7: How to use the For Each…Next statement Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Starward Coffee – Calculating a Total and an Average Figure 9-9: Problem specification for the Starward Coffee Application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Starward Coffee – Calculating a Total and an Average (cont’d.) Figure 9-8: Sample run of the Starward Coffee application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Starward Coffee – Calculating a Total and an Average (cont’d.) Figure 9-10: Partial code for the Starward Coffee application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-10: Partial code for the Starward Coffee application (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Starward Coffee – Calculating a Total and an Average (cont’d.) Figure 9-10: Partial code for the Starward Coffee application (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Car-Mart – Finding the Highest Value Figure 9-11: Problem specification for the Car-Mart application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Car-Mart – Finding the Highest Value (cont’d.) Figure 9-12: Sample run of the Car-Mart application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-13: Get Highest button’s Click event procedure Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hunt Auditorium – Arrays and Collections Figure 9-14: Problem specification for the Hunt Auditorium application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hunt Auditorium – Arrays and Collections (cont'd.) Figure 9-15: Sample run of the Hunt Auditorium application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hunt Auditorium – Arrays and Collections (cont'd.) Figure 9-16: Partial code and an illustration for the Hunt Auditorium application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hunt Auditorium – Arrays and Collections (cont'd.) Figure 9-15: Partial code and an illustration for the Hunt Auditorium application (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hinsbrook School – Accumulator Array Figure 9-17: Problem specification for the Hinsbrook School application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hinsbrook School – Accumulator Array (cont'd.) Figure 9-18: Sample run of the Hinsbrook School application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Hinsbrook School – Accumulator Array (cont'd.) Figure 9-19: Partial code for the Hinsbrook School application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-19: Partial code for the Hinsbrook School application (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Sorting a One-Dimensional Array • Sorting: arranging data in a specific order • Ascending: first element is smallest, last element is largest • Descending: first element is largest, last element is smallest • Array.Sort method: used to sort elements in a one-dimensional array in ascending order • Array.Reverse method: used after Array.Sort method to change to descending order Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-20: How to use the Array.Sort and Array.Reverse methods Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Two-Dimensional Arrays • Two-dimensional array: • Resembles a table with rows and columns • Each element is identified by a unique combination of two subscripts: (row, column) • Subscripts are zero-relative • Refer to an element using the name followed by the (row, column) pair in parentheses Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-21: Names of some of the variables contained in the two-dimensional orders array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Two-Dimensional Arrays (cont'd.) • Two-dimensional array: • Declared with highest row subscript and highest column subscript (zero-relative) • Number of rows = highest row subscript + 1 • Number of columns = highest column subscript + 1 • Can specify initial values for array elements • If no initial values are declared, array elements are automatically initialized Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-22: How to declare a two-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Two-Dimensional Arrays (cont'd.) Figure 9-23: How to store data in a two-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-23: How to store data in a two-dimensional array (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-24: How to use a two-dimensional array’s GetUpperBound method Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Traversing a Two-Dimensional Array • To traverse a two-dimensional array, use two loops: • Outer loop: tracks the row subscript • Nested loop: tracks the column subscript • Can also use a For Each…Next loop Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Traversing a Two-Dimensional Array (cont'd.) Figure 9-25: How to traverse a two-dimensional array Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 9-25: How to traverse a two-dimensional array (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Jenko Booksellers – Calculating a Total Figure 9-26: Problem specification for the Jenko Booksellers application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Jenko Booksellers – Calculating a Total (cont’d.) Figure 9-27: Sample run of the Jenko Booksellers application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Jenko Booksellers – Calculating a Total (cont’d.) Figure 9-28: Calculate button’s Click event procedure Microsoft Visual Basic 2010: Reloaded, Fourth Edition
O’Reilly Studios – Searching a Two-Dimensional Array Figure 9-29: Problem specification for the O’Reilly Studios application Microsoft Visual Basic 2010: Reloaded, Fourth Edition
O’Reilly Studios – Searching a Two-Dimensional Array (cont’d.) Figure 9-30: Sample run of the O’Reilly Studios application Microsoft Visual Basic 2010: Reloaded, Fourth Edition