module 1: array itei222 - advance programming language
DESCRIPTION
Module 1 An Array is a structured collection of components, all of same type, that is given a single name. Each component (array element) is accessed by an index that indicates the component’s position within the collection.TRANSCRIPT
![Page 1: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/1.jpg)
Module 1: Array
ITEI222 - Advance Programming Language
![Page 2: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/2.jpg)
Textbook(s) and References
Textbook(s)Deitel, P.J.; Deitel, H.M. (2008) C++ How to Program, 6th Edition. Pearson Education Inc.
ReferencesDeitel, P.J., et.al. (2008) Visual C++ How to Program, 2nd Ed. Pearson Education Inc.Dale, Nell (2007) C++ plus Data Structures, Jones and Barlett Publishers Inc.Carrano, Frank M. (2007). C++ Programming. Pearson EducationDeitel, Paul J. (2009). C++ for Programmers. Pearson Education.
![Page 3: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/3.jpg)
Module 1
An Array is a structured collection of components, all of same type, that is given a single name. Each component (array element) is accessed by an index that indicates the component’s position within the collection.
![Page 4: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/4.jpg)
Module 1Defining Array
Like other variables in C++, an array must be defined before it can be used to store information.Like other definitions, an array definition specifies a variable type and a name. But it includes another feature i.e. size.
DataType ArrayName [Const Int Expression ];
![Page 5: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/5.jpg)
Module 1Array Elements
• The items in an array are called array elements.
• All elements in an array are of the same type; only the values vary.
• Exampleint array1[4] = { 10, 5, 678, -400 } ;
![Page 6: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/6.jpg)
Module 1Accessing Array Elements
• To Access an individual array component, we write the array name, followed by an expression enclosed in square brackets. The expression specifies which component to access.
• SyntaxArrayName [ IndexExpression]
• Examplearray1[2]array1[i] where i = 2
![Page 7: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/7.jpg)
Module 1Initializing array in Declarations
• To initialize an array, you have to specify a list of initial values for the array elements, separate them with commas and enclose the list within braces.
int array1[5] = {23, 10, 16, 37, 12};• We don’t need to use the array size when we initialize all the
array elements, since the compiler can figure it out by counting the initializing variables.
int array1[ ] = { 23, 10, 16, 37,12};
![Page 8: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/8.jpg)
Module 1
• What happens if you do use an explicit array size, but it doesn’t agree with the number of components ?– If there are too few components/ items , the missing
element will be set to zero.
Initializing array in Declarations
![Page 9: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/9.jpg)
Module 1Lack of Aggregate Array Operations
• C++ does not allow aggregate operations on arrays.int x[50], y[50] ;
• There is no aggregate assignment of y to xx = y; //not valid
• To copy array y into array x, you must do it yourself, element by element.
for ( i=0; i<50; i++)x[i] = y[i]; //valid operation
• Similarly, there is no aggregate comparison of arrays.if (x == y ) //Not valid
![Page 10: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/10.jpg)
Module 1
Lack of Aggregate Array Operations• Also, you cannot perform aggregate input / output operations
on arrays.cin>>x; //not valid, where x is an arraycout<<x //not valid
• You cannot perform aggregate arithmetic operations on arrays
x = x + y // not valid, where x and y are arrays• Finally, it is not possible to return an entire array as the value
of a value-returning functionreturn x; //not valid, where x is an array.
![Page 11: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/11.jpg)
Module 1Example of One Dimensional Array
void main(){
double sales [6], average, total=0;cout<< “Enter sales of 6 days”;for( int j=0; j<6; j++)
cin >> sales[ i ];for (int j=0; j<6; j++)
total += sales[ j ] ;average = total / 6;cout<< “Average =”<< average;
}
![Page 12: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/12.jpg)
Module 1
Multidimensional Arrays• A two dimensional array is used to represent
items in a table with rows and columns, provided each item in the table is of same data type.
• Each component is accessed by a pair of indexes that represent the component’s position in each dimension.
![Page 13: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/13.jpg)
Module 1Defining Multidimensional Array• Two Dimensional Array• The array is defined with two size specifiers, each
enclosed in bracketsDataType ArrayName[ConstIntExp][ConstIntExp]
• Exampledouble array2[3][4];
• Three Dimensional Arrayfloat array3[x][y][z]
![Page 14: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/14.jpg)
Module 1
Accessing Multidimensional Array Elements
• Array elements in two dimensional arrays required two indexes
array2[1][2]• Notice that each index has its own set of
brackets. Don’t write commas.array2[1,2] // not valid syntax
![Page 15: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/15.jpg)
Module 1#include <iostream> using namespace std; int main( void ) { /* Program to add two multidimensional arrays */ int a[ 2 ][ 3 ] = { { 5, 6, 7 }, { 10, 20, 30 } }; int b[ 2 ][ 3 ] = { { 1, 2, 3 }, { 3, 2, 1 } }; int sum[ 2 ][ 3 ], row, column; /* First the addition */ for( row = 0; row < 2; row++ ) for( column = 0; column < 3; column++ ) sum[ row ][ column ] = a[ row ][ column ] + b[ row ][ column ];
![Page 16: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/16.jpg)
Module 1 /* Then print the results */ cout << "The sum is: \n\n" ; for( row = 0; row < 2; row++ ) { for( column = 0; column < 3; column++ ) cout << "\t" << sum[ row ][ column ]; cout << endl; /* at end of each row */ } system ("pause"); return 0; }
![Page 17: Module 1: Array ITEI222 - Advance Programming Language](https://reader034.vdocuments.us/reader034/viewer/2022050807/5a4d1b6e7f8b9ab0599b49eb/html5/thumbnails/17.jpg)
End Lecture 1