An Introduction to Programming with C++ Fifth Edition Chapter 11 Arrays
Objectives Declare and initialize a one-dimensional array Manipulate a one-dimensional array Explain the bubble sort algorithm Pass a one-dimensional array to a function Use parallel one-dimensional arrays An Introduction to Programming with C++, Fifth Edition
Objectives (continued) Declare and initialize a two-dimensional array Enter data into a two-dimensional array Search a two-dimensional array Utilize a one-dimensional array in a .NET C++ program An Introduction to Programming with C++, Fifth Edition
Concept Lesson Using Arrays One-Dimensional Arrays Storing Data in a One-Dimensional Array Manipulating One-Dimensional Arrays Passing a One-Dimensional Array to a Function An Introduction to Programming with C++, Fifth Edition
Concept Lesson (continued) Using Parallel One-Dimensional Arrays Two-Dimensional Arrays Storing Data in a Two-Dimensional Array Searching a Two-Dimensional Array An Introduction to Programming with C++, Fifth Edition
Using Arrays Simple variable is unrelated to other variables in computer’s internal memory Also called a scalar variable Array is a group of variables Same name and data type Variables are related in some way Most commonly used One-dimensional Three-dimensional An Introduction to Programming with C++, Fifth Edition
One-Dimensional Arrays Visualize a one-dimensional array as a column of variables Subscript (or index) identifies each variable Indicates the variable’s position in the array Subscript of first variable is 0 Begin by populating the array so it does not contain garbage Element An Introduction to Programming with C++, Fifth Edition
One-Dimensional Arrays (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a One-Dimensional Array Can use an assignment statement to enter data into an array See Figure 11-3 Can use >> and getline() See Figure 11-4 An Introduction to Programming with C++, Fifth Edition
Storing Data in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Manipulating One-Dimensional Arrays Common array manipulation functions Display the contents of an array Access an array element using its subscript Search an array Calculate the average of the data stored in an array Find the highest value stored in an array Update the array elements Sort the array elements using bubble sort An Introduction to Programming with C++, Fifth Edition
Displaying the Contents of a One-Dimensional Array Function may need simply to display the contents of an array An Introduction to Programming with C++, Fifth Edition
Displaying the Contents of a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Using the Subscript to Access an Element in a One-Dimensional Array Before accessing element, verify if subscript is valid An Introduction to Programming with C++, Fifth Edition
Searching a One-Dimensional Array Sales manager wants to determine the number of salespeople selling above a specific amount Function searches the sales array Array contains amount sold by each salesperson Look for values greater than the amount provided by sales manager An Introduction to Programming with C++, Fifth Edition
Searching a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Calculating the Average Amount Stored in a One-Dimensional Numeric Array Prof. Jeremiah wants to calculate and display average test score earned by students on final Function adds test scores that are stored in array Then, divide sum by number of elements An Introduction to Programming with C++, Fifth Edition
Calculating the Average Amount Stored in a One-Dimensional Numeric Array (continued) An Introduction to Programming with C++, Fifth Edition
Determining the Highest Value Stored in a One-Dimensional Array Sharon Johnson keeps track of the amount of money she earns each week Function displays highest amount earned in a week Stores pay amounts in a one-dimensional array An Introduction to Programming with C++, Fifth Edition
Determining the Highest Value Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Updating the Values Stored in a One-Dimensional Array Sales manager at Jillian Company wants a function that increases the price of each item company sells Function stores prices in a one-dimensional array Then, increase value stored in each element Also, display each item’s new price on screen An Introduction to Programming with C++, Fifth Edition
Updating the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array Arranging data in a specific order is called sorting Ascending or descending order Bubble sort is quick and easy (for small arrays) Adjacent elements that are out of order are swapped An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Sorting the Values Stored in a One-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Passing a One-Dimensional Array to a Function By default, scalar variables are passed by value To pass by reference, use address-of (&) operator Arrays in C++ are passed by reference More efficient Address of first element is passed to function Address-of operator is not used An Introduction to Programming with C++, Fifth Edition
Passing a One-Dimensional Array to a Function (continued) An Introduction to Programming with C++, Fifth Edition
Using Parallel One-Dimensional Arrays Takoda Tapahe wants a program that displays the price of the item whose product ID she enters An Introduction to Programming with C++, Fifth Edition
Using Parallel One-Dimensional Arrays (continued) Parallel arrays are two or more arrays whose elements are related by their position in the arrays Related by their subscript An Introduction to Programming with C++, Fifth Edition
Using Parallel One-Dimensional Arrays (continued) An Introduction to Programming with C++, Fifth Edition
Using Parallel One-Dimensional Arrays (continued) An Introduction to Programming with C++, Fifth Edition
Two-Dimensional Arrays Two-dimensional array resembles a table Elements are in rows and columns Each element is identified by two subscripts Subscripts specify the variable’s row and column position in the array An Introduction to Programming with C++, Fifth Edition
Two-Dimensional Arrays (continued) An Introduction to Programming with C++, Fifth Edition
Two-Dimensional Arrays (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a Two-Dimensional Array You can use an assignment statement to enter data into a two-dimensional array Or use >> and getline() Use two loops to access every element in a two-dimensional array One loop tracks row subscript Other loop tracks column subscript An Introduction to Programming with C++, Fifth Edition
Storing Data in a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Storing Data in a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Searching a Two-Dimensional Array Two one-dimensional (parallel) arrays can be replaced with one two-dimensional array An Introduction to Programming with C++, Fifth Edition
Searching a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Searching a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Searching a Two-Dimensional Array (continued) An Introduction to Programming with C++, Fifth Edition
Summary An array is a group of variables that have the same name and data type and are related in some way One-dimensional Visualize as a column of variables Two-dimensional Visualize as a table You must declare an array before you can use it Each elements in a one-dimensional array is assigned a subscript First element has subscript 0 An Introduction to Programming with C++, Fifth Edition
Summary (continued) Parallel arrays are two or more arrays whose elements are related by their subscript in the arrays To create a two-dimensional array specify the number of rows and columns Each element is identified by two subscripts First subscript represents the element’s row location Second subscript represents its column location Use two loops to access every element in a two-dimensional array An Introduction to Programming with C++, Fifth Edition
Application Lesson: Using Arrays in a C++ Program Lab 11.1: Stop and Analyze Lab 11.2 Program should either display the monthly rainfall amounts on the screen or calculate and display the total rainfall amount Lab 11.3 Modified program will use a value-returning function, calcTotal(), to calculate the total rainfall amount Lab 11.4: Desk-Check Lab Lab 11.5: Debugging Lab An Introduction to Programming with C++, Fifth Edition