580 likes | 717 Vues
This chapter focuses on arrays in Visual Basic 2010, encompassing both one-dimensional and two-dimensional arrays. After studying this material, you will be able to declare, initialize, and manipulate arrays effectively. You'll learn how to store data, traverse arrays using loops, compute totals and averages, find the highest values, and sort arrays. The chapter further discusses array properties, such as the Length and GetUpperBound methods, along with practical examples like the Starward Coffee application. Enhance your programming skills in Visual Basic with these essential concepts!
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